保存代码到文件:logger.py

import os

import logbook

from logbook.more import ColorizedStderrHandler

import smtplib

LOG_DIR = os.path.join('log')

if not os.path.exists(LOG_DIR):

os.makedirs(LOG_DIR)

def get_logger(name='test', file_log=False):

logbook.set_datetime_format('local')

ColorizedStderrHandler(bubble=False).push_application()

if file_log:

logbook.TimedRotatingFileHandler(os.path.join(LOG_DIR, '%s.log' % name), date_format='%Y%m%d', bubble=True).push_application()

return logbook.Logger(name)

LOG = get_logger(file_log=True)

def send_email(email_conf, message):

smtp = smtplib.SMTP()

smtp.connect(email_conf['host'], email_conf['port'])

smtp.login(email_conf['user'], email_conf['password'])

smtp.sendmail(email_conf['fromaddr'], email_conf['recipients'], message.as_string())

使用方法:

from logger import LOG

if __name__ == "__main__":

LOG.info('Checking %s:%s ...' % (str(date), str(data_type)))

python正确打开方式_Python log 的正确打开方式相关推荐

  1. python open函数用法_Python使用open函数打开文件的常用模式

    python 中open()的用法? open("/path/to/my/image.png", "rb") 中的'rb'代表了什么意思?所有试图感动你而做的事 ...

  2. python异常处理的方法_python异常处理的四种方式,不只是try

    对于python程序中,进行异常捕获,一般我们都用try except,但是还有其他方式经常使用. 以后再进行异常处理时,知道有四种方式,可以考虑更合适的方式 下面介绍一下四种方式 1.内部抛出异常( ...

  3. python导入selenium快捷键_python,_Selenium工具自动打开的浏览器和用快捷方式打开的样式不一样?,python - phpStudy...

    Selenium工具自动打开的浏览器和用快捷方式打开的样式不一样? 每次用selenium打开的Firefox都跟我桌面的快捷方式不一样呢 谷歌 等===都不一样 就火狐吧我桌面安装的是32位如图 驱 ...

  4. python操作sqlite数据库_Python操作Sqlite正确实现方法解析

    Python编程语言的优点非常多,它的编程特色主要体现在可扩充性方面.那么,在接下来的这篇文章中,我们将会为大家详细介绍一下有关Python操作Sqlite 的相关应用技巧,希望可以给大家带来些帮助. ...

  5. python中正确的表达式_python中如何正确使用正则表达式的详细模式(Verbose mode expression)...

    简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正 ...

  6. python写日志文件_Python logging日志模块 配置文件方式

    在一些微服务或web服务中我们难免需要日志功能,用来记录一些用户的登录记录,操作记录,以及一些程序的崩溃定位,执行访问定位等等; Python内置 非常强大的日志模块 ==> logging 今 ...

  7. python调用微信客户端_python模拟微信客户端打开链接Python Logging 模块研究

    背景 在一个新的项目里面加入了日志功能,想自己写一个,但是一个偶然的机会,通过google发现Python内建了一个非常强大的日志(log)模块:logging.粗略的研究了一下,下面是我的一些心得札 ...

  8. python采用单例模式游戏_Python实现Singleton模式的方式详解

    前言 使用python实现设计模式中的单例模式.单例模式是一种比较常用的设计模式,其实现和使用场景判定都是相对容易的.本文将简要介绍一下python中实现单例模式的几种常见方式和原理.一方面可以加深对 ...

  9. python编码格式有哪些_Python JSON编解码的方式有哪些

    Python JSON编解码的方式有哪些 发布时间:2020-11-04 17:52:46 来源:亿速云 阅读:92 今天就跟大家聊聊有关Python JSON编解码的方式有哪些,可能很多人都不太了解 ...

最新文章

  1. foo php,php – $foo === TRUE和TRUE === $foo有什么区别?
  2. 最新综述:用于组合优化的强化学习
  3. Redis(七)Redis的噩梦:阻塞
  4. java log4jhelper_log4j的使用
  5. 国家语言,语言代码,locale id对应表
  6. 肝了1W字!文本生成评价指标的进化与推翻
  7. SqlServer数据库的常用操作-更新中
  8. C#LeetCode刷题之#501-二叉搜索树中的众数​​​​​​​(Find Mode in Binary Search Tree)
  9. 华为mysql金融版_华为云数据库MySQL金融版公测,打造满足金融场景数据安全性的高端产品...
  10. MyEclipse安装包
  11. 注册(五)之请求处理
  12. python与西门子1200通讯_西门子S7-1200的以太网通信
  13. 舆情监测系统哪家好?
  14. 物流项目管理的团队建设 (zt)
  15. 公众账号迁移:微信订阅号怎么升级服务号?
  16. 使用原生JavaScript改变DOM元素面试题
  17. Redis使用说明书(Windows)
  18. 大华摄像头,NVR取流规则
  19. 符号“|=”是什么意思?
  20. termux怎么生成木马_Termux入侵安卓指南

热门文章

  1. 二叉搜索树的中序遍历为 递增序列_Go 刷 Leetcode 系列:恢复二叉搜索树
  2. 字节跳动-文远知行杯”广东工业大学第十四届程序设计竞赛
  3. table中的td内容过长显示为固定长度,多余部分用省略号代替
  4. 一键搞定数码照片印前特效-【用可牛影像】
  5. 4.4 Iterator(迭代器)
  6. ICCV2021|STMN:双记忆网络提升视频行人ReID性能
  7. 武汉大学 RSIDEA 团队开源LoveDA:可同时推进语义分割和迁移学习
  8. 厉害了!国人开发的编程语言 Go+ 1.0 即将发布!
  9. 度假式办公环境、值得拥有!珠海金山软件诚聘CV、C++、后端工程师
  10. 半监督学习价值凸显!谷歌大脑83页PPT介绍最新进展