關於django的日志設置詳細可以看下官方文檔:https://yiyibooks.cn/xx/Django_1.11.6/topics/logging.html
示例:
# 日志文件配置 LOGGING = { 'version': 1, 'disable_existing_loggers': False, # 是否禁用已經存在的日志器 'formatters': { # 日志信息顯示的格式 'verbose': { 'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s' }, 'simple': { 'format': '%(levelname)s %(module)s %(lineno)d %(message)s' }, }, 'filters': { 'require_debug_true': { # django在debug模式下才輸出日志 '()': 'django.utils.log.RequireDebugTrue', }, }, 'handlers': { # 日志處理方法 'console': { # 向終端中輸出日志 'level': 'INFO', 'filters': ['require_debug_true'], 'class': 'logging.StreamHandler', 'formatter': 'simple' }, 'file': { # 向文件中輸出日志 'level': 'INFO', 'class': 'logging.handlers.RotatingFileHandler', # 日志文件的位置 'filename': os.path.join(os.path.dirname(BASE_DIR), "logs/meiduo.log"), 'maxBytes': 300 * 1024 * 1024, # 日志文件的最大容量 'backupCount': 10, # 300M * 10 'formatter': 'verbose' }, }, 'loggers': { 'django': { # 定義了一個名為django的日志器 'handlers': ['console', 'file'], # 可以同時向終端與文件中輸出日志 'level': 'INFO', # 日志器接收的最低日志級別 }, } }
如何記錄日志:
import logging
logger = logging.getLogger('django')
logger.debug('xx')
logger.info('xx')
logger.warning('xx')
logger.error('xx')
logger.critical('xx')
日志級別:
DEBUG: 用於調試目的的底層系統信息
INFO: 普通的系統信息
WARNING:表示出現一個較小的問題。
ERROR: 表示出現一個較大的問題。
CRITICAL:表示出現一個致命的問題。