基于Python log 的正确打开方式


Posted in Python onApril 28, 2018

保存代码到文件: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 log 的正确打开方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python urlopen 使用小示例
Sep 06 Python
python基于xml parse实现解析cdatasection数据
Sep 30 Python
深入解答关于Python的11道基本面试题
Apr 01 Python
Python Json序列化与反序列化的示例
Jan 31 Python
python中itertools模块zip_longest函数详解
Jun 12 Python
详解pyenv下使用python matplotlib模块的问题解决
Nov 29 Python
如何用python写一个简单的词法分析器
Dec 18 Python
使用IPython或Spyder将省略号表示的内容完整输出
Apr 20 Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
Apr 30 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 Python
python中绕过反爬虫的方法总结
Nov 25 Python
python如何进行基准测试
Apr 26 Python
python+pandas分析nginx日志的实例
Apr 28 #Python
详谈套接字中SO_REUSEPORT和SO_REUSEADDR的区别
Apr 28 #Python
python实现关键词提取的示例讲解
Apr 28 #Python
python实现扫描日志关键字的示例
Apr 28 #Python
python socket网络编程之粘包问题详解
Apr 28 #Python
在Windows中设置Python环境变量的实例讲解
Apr 28 #Python
PyTorch快速搭建神经网络及其保存提取方法详解
Apr 28 #Python
You might like
PHP 引用文件技巧
2010/03/02 PHP
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
2010/10/12 PHP
使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT
2011/04/23 PHP
pdo中使用参数化查询sql
2011/08/11 PHP
CentOS7编译安装php7.1的教程详解
2019/04/18 PHP
Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
2016/05/23 Javascript
浅谈JavaScript的全局变量与局部变量
2016/06/10 Javascript
JavaScript数据结构之数组的表示方法示例
2017/04/12 Javascript
JS实现验证码倒计时的注册页面
2018/01/02 Javascript
jquery动态添加带有样式的HTML标签元素方法
2018/02/24 jQuery
编写React组件项目实践分析
2018/03/04 Javascript
详解微信小程序canvas圆角矩形的绘制的方法
2018/08/22 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
layUI实现前端分页和后端分页
2019/07/27 Javascript
如何使用JavaScript检测空闲的浏览器选项卡
2020/05/28 Javascript
vue3.0实现点击切换验证码(组件)及校验
2020/11/18 Vue.js
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
python实现探测socket和web服务示例
2014/03/28 Python
Python使用MySQLdb for Python操作数据库教程
2014/10/11 Python
Python中DJANGO简单测试实例
2015/05/11 Python
python插入排序算法实例分析
2015/07/03 Python
Python cookbook(数据结构与算法)保存最后N个元素的方法
2018/02/13 Python
python钉钉机器人运维脚本监控实例
2019/02/20 Python
详解pandas中MultiIndex和对象实际索引不一致问题
2019/07/23 Python
Python模块 _winreg操作注册表
2020/02/05 Python
Python configparser模块封装及构造配置文件
2020/08/07 Python
详解使用HTML5的classList属性操作CSS类
2017/10/13 HTML / CSS
HTML5的文档结构和新增标签完全解析
2017/04/21 HTML / CSS
澳大利亚拥有最佳跳伞降落点和最好服务的跳伞项目运营商:Skydive Australia
2018/03/05 全球购物
荷兰照明、灯具和配件网上商店:dmlights
2019/08/25 全球购物
在线实验室测试:HealthLabs.com
2020/05/03 全球购物
车间班长岗位职责
2013/11/30 职场文书
教育基金募捐倡议书
2014/05/14 职场文书
幼儿园健康教育方案
2014/06/14 职场文书
迎国庆演讲稿
2014/09/05 职场文书
2019最新企业员工考勤管理制度(通用版)!
2019/07/02 职场文书