1、设置:
LOGGING = {
'version': 1,
'disable_existing_loggers': false, # 是否禁用已存在的日志器
‘formatters’: {
# 日志信息显示格式
‘verbose’: {
'format': '%(levelname)s %(asctime)s %(modules)s %(lineno)d %(message)s',
},
'simple': {
'format': '%(levelname)s %(modules)s %(lineno)d %(message)s',
},
},
'filters': {
# 对日志进行过滤
‘require_debug_true’: {
'()': 'django.utils.log.RequireDebugTrue',
},
},
'handlers': {
# 日志处理方法
‘console’: {
# 终端输出日志
'level': 'INFO',
'filters': ['require_debug_true'],
'class': 'logging.StreamHandler',
'format': 'simple'
},
'file': {
# 向文件中输出日志
'level': 'INFO' if DEBUG else 'WARNING',
'class': 'concurrent_log_handler.ConcurrentRotatingFileHandler',
'maxBytes': 5 * 1024 * 1024, # 分割大小(5M)
'backupCount': 10, # 保存10份
'filename': 'log.log', # 日志文件位置
'formatter': 'verbose',
'encoding': 'utf-8',
},
},
'loggers': {
# 日志器
‘django’: {
# 定义DJANGO的日志器
'handlers': ['console', 'file'], # 可以同时向终端与文件中输出日志
'propagate': True, # 是否继续传递日志信息
'level': 'INFO' if DEBUG else 'WARNING' # 日志器接收的最低日志级别
}
},
}
2、视图中的调用
import logging
logger = logging.getLogger('django')