微信公众号:Python 集中营 简略的事件反复做,反复的事件保持做,保持的事件用心做;
你的必定是我保持的能源,如果这篇文章对你有帮忙,点个关注吧!
相干依赖库
1# -*- coding: UTF-8 -*-
2
3# 日志模块
4
5import logging
6
7# 工夫模块
8
9import datetime
10
11# 零碎操作模块
12
13import os
14
15# 日志解决模块
16
17from logging import handlers
初始化全局参数
1class LogUtil(object):
2
3 def __init__(self, log_name):
4
5 '''初始化参数'''
6
7 # 日志名称
8
9 self.log_name = log_name
10
11 # 日志对象
12
13 self.logger = logging.getLogger(self.log_name)
14
15 # 日志级别
16
17 self.logger.setLevel(logging.DEBUG)
18
19 # 日志工夫格式化
20
21 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 # 格式化日志输入格局
10
11 self.format = logging.Formatter('[%(asctime)s][%(filename)s][line:%(lineno)d][%(levelname)s] - [%(message)s]',
12 "%Y-%m-%d %H:%M:%S")
13
14 self.handlers.setFormatter(self.format)
15
16 # 将日志增加到 logger 对象中
17
18 self.logger.addHandler(self.handlers)
19
20 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)
9
10 # 格式化日志输入格局
11
12 self.format = logging.Formatter('[%(asctime)s][%(filename)s][line:%(lineno)d][%(levelname)s] - [%(message)s]',
13 "%Y-%m-%d %H:%M:%S")
14
15 self.handlers.setFormatter(self.format)
16
17 # 将日志增加到 logger 对象中
18
19 self.logger.addHandler(self.handlers)
20
21 return self.logger
调用日志模块
1if __name__ == '__main__':
2 '''
3 控制台日志输入调用
4 '''5 # logger = LogUtil(" 测试控制台日志输入 ").console_output()
6
7 # logger.info("我是一个 info")
8
9 # logger.debug("我是一个 debug")
10
11 # logger.error("我是一个 error")
12
13 '''
14 文件内日志输入调用
15 '''
16
17 logger = LogUtil("测试输入到文件").file_output(file_path="C:\\")
18
19 logger.info("test")
更多精彩返回微信公众号【Python 集中营】,专一于 python 技术栈,材料获取、交换社区、干货分享,期待你的退出~