基于Python log 的正确打开方式

yipeiwu_com7年前Python基础

保存代码到文件: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实现蒙特卡洛算法小实验过程详解

Python实现蒙特卡洛算法小实验过程详解

蒙特卡洛算法思想 蒙特卡洛(Monte Carlo)法是一类随机算法的统称,提出者是大名鼎鼎的数学家冯·诺伊曼,他在20世纪40年代中期用驰名世界的赌城—摩纳哥的蒙特卡洛来命名这种方法。...

Python 3.8中实现functools.cached_property功能

前言 缓存属性( cached_property )是一个非常常用的功能,很多知名Python项目都自己实现过它。我举几个例子: bottle.cached_property Bottl...

Python设计模式之享元模式原理与用法实例分析

Python设计模式之享元模式原理与用法实例分析

本文实例讲述了Python设计模式之享元模式原理与用法。分享给大家供大家参考,具体如下: 享元模式(Flyweight Pattern):运用共享技术有效地支持大量细粒度的对象. 下面是...

pandas DataFrame行或列的删除方法的实现示例

pandas DataFrame行或列的删除方法的实现示例

此文我们继续围绕DataFrame介绍相关操作。 平时在用DataFrame时候,删除操作用的不太多,基本是从源DataFrame中筛选数据,组成一个新的DataFrame再继续操作。...

Python实现非正太分布的异常值检测方式

Python实现非正太分布的异常值检测方式

工作中,我们经常会遇到数据异常,比如说浏览量突增猛降,交易量突增猛降,但是这些数据又不是符合正太分布的,如果用几倍西格玛就不合适,那么我们如何来判断这些变化是否在合理的范围呢? 小白查阅...