python 彩色日志配置
2023-09-14 09:06:36 时间
import os
import logging
import logging.config as log_conf
import datetime
import coloredlogs
log_dir = os.path.dirname(os.path.dirname(__file__)) + '/logs'
if not os.path.exists(log_dir):
os.mkdir(log_dir)
today = datetime.datetime.now().strftime("%Y%m%d")
log_path = os.path.join(log_dir, f'weibo_{today}.log')
log_config = {
'version': 1.0,
'formatters': {
'colored_console': {'()': 'coloredlogs.ColoredFormatter',
'format': "%(asctime)s - %(name)s - %(levelname)s - %(message)s", 'datefmt': '%H:%M:%S'},
'detail': {
'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s',
'datefmt': "%Y-%m-%d %H:%M:%S" # 如果不加这个会显示到毫秒。
},
'simple': {
'format': '%(name)s - %(levelname)s - %(message)s',
},
},
'handlers': {
'console': {
'class': 'logging.StreamHandler', # 日志打印到屏幕显示的类。
'level': 'INFO',
'formatter': 'colored_console'
},
'file': {
'class': 'logging.handlers.RotatingFileHandler', # 日志打印到文件的类。
'maxBytes': 1024 * 1024 * 1024, # 单个文件最大内存
'backupCount': 1, # 备份的文件个数
'filename': log_path, # 日志文件名
'level': 'INFO', # 日志等级
'formatter': 'detail', # 调用上面的哪个格式
'encoding': 'utf-8', # 编码
},
},
'loggers': {
'crawler': {
'handlers': ['console', 'file'], # 只打印屏幕
'level': 'DEBUG', # 只显示错误的log
},
'parser': {
'handlers': ['file'],
'level': 'INFO',
},
'other': {
'handlers': ['console', 'file'],
'level': 'INFO',
},
'storage': {
'handlers': ['console', 'file'],
'level': 'INFO',
}
}
}
log_conf.dictConfig(log_config)
crawler = logging.getLogger('crawler')
storage = logging.getLogger('storage')
coloredlogs.install(level='DEBUG', logger=crawler)
coloredlogs.install(level='DEBUG', logger=storage)
相关文章
- Python标准库 -- UUID模块(生成唯一标识)
- 配置豆瓣镜像作为python 库的下载源
- Python快速学习01:Eclipse上配置PyDev & 'Hello World !'
- python list中append()与extend()用法
- 基于Python中numpy数组的合并实例讲解
- 日志回滚:python(日志分割)
- django python 修改外键从表的非主键字段值的方法
- centos7中安装python3,配置python虚拟环境,
- Python 手工计算x的算术平方根,一个中国古代的数学成就
- Python每日一练(20230301)
- 【OpenCV-Python】教程:7-2 kNN识别手写字符
- Python配置pip国内镜像源
- Python Django模板templates渲染及配置
- 华为OD机试 - 星际篮球争霸赛(Java & JS & Python)
- 已解决PyCharm中配置Anaconda的Python环境并安装TensorFlow的详细步骤
- 【python实战】以最快速度抢到回家的火车票!(附资源)
- 我学Python常逛的10个网站
- 小白能学好Python吗 Python学习费用大概多少
- 〖Python零基础入门篇②〗- Python编程环境搭建 - Pycharm 简介、安装与配置
- 〖Python接口自动化测试实战篇⑪〗- 实战 - 结合 unittest 框架实现接口测试的断言
- Python Selenium 基本配置
- 【项目实战】Python基于局部离群因子LOF算法(LocalOutlierFactor)实现信用卡数据异常值检测项目实战
- Python Django框架学习11:Django Nginx+uwsgi 安装配置
- 【华为OD机试 2023】 人数最多的站点/小火车最多人时所在园区站点(C++ Java JavaScript Python)
- Python 基础语法
- python+appium+pytest自动化测试-yaml文件配置Capabilities
- python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
- window10配置python虚拟环境的路径的详细过程
- 华为校招机试 - 工单调度策略(Java & JS & Python)
- selenium+python headless 爬虫环境配置
- Python科学库sklearn.numpy.scipy. matplotlib.pandas