基于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利用多进程将大量数据放入有限内存的教程
Apr 01 Python
解决python读取几千万行的大表内存问题
Jun 26 Python
python3 小数位的四舍五入(用两种方法解决round 遇5不进)
Apr 11 Python
Python静态类型检查新工具之pyright 使用指南
Apr 26 Python
使用python实现简单五子棋游戏
Jun 18 Python
python中的反斜杠问题深入讲解
Aug 12 Python
django admin 自定义替换change页面模板的方法
Aug 23 Python
Python代理IP爬虫的新手使用教程
Sep 05 Python
python 利用pyttsx3文字转语音过程详解
Sep 25 Python
Django框架序列化与反序列化操作详解
Nov 01 Python
Python使用sys.exc_info()方法获取异常信息
Jul 23 Python
Python实现的扫码工具居然这么好用!
Jun 07 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 mysql索引问题
2008/06/07 PHP
php分页代码学习示例分享
2014/02/20 PHP
PHP中数据库单例模式的实现代码分享
2014/08/21 PHP
php之static静态属性与静态方法实例分析
2015/07/30 PHP
node.js WEB开发中图片验证码的实现方法
2014/06/03 Javascript
深入理解JavaScript系列(31):设计模式之代理模式详解
2015/03/03 Javascript
javascript中eval函数用法分析
2015/04/25 Javascript
JS动态给对象添加属性和值的实现方法
2016/10/21 Javascript
EasyUI折叠表格层次显示detailview详解及实例
2016/12/28 Javascript
浅谈vue-router 路由传参的方法
2017/12/27 Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
2018/05/16 Javascript
vue-test-utils初使用详解
2019/05/23 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
django用户注册、登录、注销和用户扩展的示例
2018/03/19 Python
图解Python变量与赋值
2018/04/03 Python
Python求解任意闭区间的所有素数
2018/06/10 Python
python实现简单的单变量线性回归方法
2018/11/08 Python
实例讲解Python中整数的最大值输出
2019/03/17 Python
Django 表单模型选择框如何使用分组
2019/05/16 Python
详解django实现自定义manage命令的扩展
2019/08/13 Python
Python读取csv文件实例解析
2019/12/30 Python
类和结构的区别
2012/08/15 面试题
类的返射机制中的包及核心类
2016/09/12 面试题
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
专业实习自我鉴定
2013/10/29 职场文书
优秀通讯员事迹材料
2014/01/28 职场文书
解除劳动合同协议书范本
2014/04/14 职场文书
体育教育毕业生自荐信
2014/06/29 职场文书
上班迟到检讨书范文300字
2014/11/02 职场文书
介绍信样本
2015/01/31 职场文书
盘点2020年适合农村地区创业的项目
2019/10/16 职场文书
导游词之日月潭
2019/11/05 职场文书
python通过函数名调用函数的几种方法总结
2021/06/07 Python
Python Flask请求扩展与中间件相关知识总结
2021/06/11 Python
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python
Go语言编译原理之源码调试
2022/08/05 Golang