标签:__ logging logs demo self logger 重写 message
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author: zhangjun
# @Date : 2018/7/26 9:20
# @Desc : Description
import logging
import logging.handlers
import os
import time
class logs( object ):
def __init__( self ):
self .logger = logging.getLogger("")
# 设置输出的等级
LEVELS = { 'NOSET' : logging.NOTSET,
'DEBUG' : logging.DEBUG,
'INFO' : logging.INFO,
'WARNING' : logging.WARNING,
'ERROR' : logging.ERROR,
'CRITICAL' : logging.CRITICAL}
# 创建文件目录
logs_dir = "logs2"
if os.path.exists(logs_dir) and os.path.isdir(logs_dir):
pass
else :
os.mkdir(logs_dir)
# 修改log保存位置
timestamp = time.strftime( "%Y-%m-%d" ,time.localtime())
logfilename = '%s.txt' % timestamp
logfilepath = os.path.join(logs_dir,logfilename)
rotatingFileHandler = logging.handlers.RotatingFileHandler(filename = logfilepath,
maxBytes = 1024 * 1024 * 50 ,
backupCount = 5 )
# 设置输出格式
formatter = logging.Formatter( '[%(asctime)s] [%(levelname)s] %(message)s' , '%Y-%m-%d %H:%M:%S' )
rotatingFileHandler.setFormatter(formatter)
# 控制台句柄
console = logging.StreamHandler()
console.setLevel(logging.NOTSET)
console.setFormatter(formatter)
# 添加内容到日志句柄中
self .logger.addHandler(rotatingFileHandler)
self .logger.addHandler(console)
self .logger.setLevel(logging.NOTSET)
def info( self , message):
self .logger.info(message)
def debug( self , message):
self .logger.debug(message)
def warning( self , message):
self .logger.warning(message)
def error( self , message):
self .logger.error(message)
|
2.调用模块
创建另外一个py文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author: zhangjun
# @Date : 2018/7/26 9:21
# @Desc : Description
import logging
logger = logging.getLogger(__name__)
import logutil2
if __name__ = = '__main__' :
logger = logutil2.logs()
logger.info( "this is info" )
logger.debug( "this is debug" )
logger.error( "this is error" )
logger.warning( "this is warning" )
|
标签:__,logging,logs,demo,self,logger,重写,message 来源: https://www.cnblogs.com/diracy/p/16074789.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。