Django 日志配置
在Django中配置日志,你需要在项目的settings.py
文件中设置LOGGIC
配置字典。以下是一个基本的日志配置示例:
import os
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'standard': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'standard'
},
'file': {
'level': 'INFO',
'class': 'logging.FileHandler',
'filename': os.path.join(BASE_DIR, 'debug.log'), # 日志输出文件
'formatter': 'standard',
'mode': 'a', # 追加模式
},
},
'loggers': {
'django': {
'handlers': ['console', 'file'],
'level': 'INFO',
'propagate': True,
},
},
}
在这个配置中,我们定义了两个处理器:console
和file
。console
处理器将日志输出到控制台,而file
处理器将日志以追加模式写入到debug.log
文件。我们还定义了一个名为django
的日志器,它将INFO级别以上的日志信息同时发送到控制台和文件中。
要在Django代码中使用日志,你可以这样做:
import logging
logger = logging.getLogger(__name__)
def my_view(request):
logger.debug('A debug message')
return HttpResponse('Logging example')
这段代码会创建一个名为views
的日志器,并记录一条调试信息。记得在项目的__init__.py
文件中设置os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'your_project_name.settings')
以确保日志配置正确加载。
评论已关闭