Files
cdtestplant_v1/conf/logConfig.py
2025-04-29 18:09:00 +08:00

67 lines
2.0 KiB
Python

from pathlib import Path
# 目录根目录
LOG_DIR = Path.cwd() / 'logs'
if not LOG_DIR.exists():
LOG_DIR.mkdir(parents=True)
# 生成文档文件
LOG_GENERATE_FILE = LOG_DIR / 'generates_logs'
LOGGING = {
"version": 1,
"disable_existing_loggers": False,
"filters": {"require_debug_false": {"()": "django.utils.log.RequireDebugFalse"}},
"formatters": {
# 详细
"verbose": {
"format": "%(levelname)s %(asctime)s %(module)s "
"%(process)d %(thread)d %(message)s"
},
# 简单
'simple': {
'format': '[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s'
},
},
# 两种分发器
"handlers": { # 定义了三种分发器
'root_log_file': {
'level': "WARNING",
'class': 'logging.handlers.RotatingFileHandler',
'filename': LOG_DIR / 'root_log',
'maxBytes': 1024 * 1024 * 10,
'backupCount': 10,
'formatter': 'simple',
'encoding': 'utf-8',
},
'generate_log_file': {
'level': "INFO",
# 滚动生成日志,切割
'class': 'logging.handlers.RotatingFileHandler',
# 日志文件名
'filename': LOG_GENERATE_FILE,
# 单个日志文件最大为20M
'maxBytes': 1024 * 1024 * 20,
# 日志备份文件最大数量30个
'backupCount': 30,
# 简单格式
'formatter': 'simple',
# 放置中文乱码
'encoding': 'utf-8',
},
"console": {
"level": "DEBUG",
"class": "logging.StreamHandler",
"formatter": "verbose",
},
},
"root": {"level": "WARNING", "handlers": ["console", 'root_log_file']}, # Django-root日志默认级别为WARNING
"loggers": {
"generate_document_logger": {
"level": "DEBUG",
"handlers": ["console", "generate_log_file"],
"propagate": True,
},
},
}