微信公众号:Python 集中营 简略的事件反复做,反复的事件保持做,保持的事件用心做;
你的必定是我保持的能源,如果这篇文章对你有帮忙,点个关注吧!
相干依赖库
1# -*- coding: UTF-8 -*- 2 3# 日志模块 4 5import logging 6 7# 工夫模块 8 9import datetime1011# 零碎操作模块1213import os1415# 日志解决模块1617from logging import handlers
初始化全局参数
1class LogUtil(object): 2 3 def __init__(self, log_name): 4 5 '''初始化参数''' 6 7 # 日志名称 8 9 self.log_name = log_name1011 # 日志对象1213 self.logger = logging.getLogger(self.log_name)1415 # 日志级别1617 self.logger.setLevel(logging.DEBUG)1819 # 日志工夫格式化2021 self.log_time = datetime.datetime.now().strftime("%Y-%m-%d_%H:%M:%S")
控制台输入
1def console_output(self): 2 3 # 日志输入 4 5 self.handlers = logging.StreamHandler() 6 7 self.handlers.setLevel(logging.DEBUG) 8 9 # 格式化日志输入格局1011 self.format = logging.Formatter('[%(asctime)s][%(filename)s][line:%(lineno)d][%(levelname)s] - [%(message)s]',12 "%Y-%m-%d %H:%M:%S")1314 self.handlers.setFormatter(self.format)1516 # 将日志增加到logger对象中1718 self.logger.addHandler(self.handlers)1920 return self.logger
文件内输入
1def file_output(self, file_path="/usr/data/load/", file_name="log"): 2 3 # 将日志输入到文件 4 5 self.file_full_path = os.path.join(file_path, file_name + ".log") 6 7 self.handlers = handlers.TimedRotatingFileHandler(self.file_full_path, when='midnight', 8 interval=1, backupCount=50) 910 # 格式化日志输入格局1112 self.format = logging.Formatter('[%(asctime)s][%(filename)s][line:%(lineno)d][%(levelname)s] - [%(message)s]',13 "%Y-%m-%d %H:%M:%S")1415 self.handlers.setFormatter(self.format)1617 # 将日志增加到logger对象中1819 self.logger.addHandler(self.handlers)2021 return self.logger
调用日志模块
1if __name__ == '__main__': 2 ''' 3 控制台日志输入调用 4 ''' 5 # logger = LogUtil("测试控制台日志输入").console_output() 6 7 # logger.info("我是一个info") 8 9 # logger.debug("我是一个debug")1011 # logger.error("我是一个error")1213 '''14 文件内日志输入调用15 '''1617 logger = LogUtil("测试输入到文件").file_output(file_path="C:\\")1819 logger.info("test")
更多精彩返回微信公众号【Python 集中营】,专一于 python 技术栈,材料获取、交换社区、干货分享,期待你的退出~