Я пытаюсь изучить модуль логирования в Django. Я хочу записывать исключения в файл журнала, чтобы видеть их позже. Печать сообщений журнала на консоли работает нормально, но я не могу записать те же сообщения журнала в файл журнала. Ниже мой код.
My settings.py
LOGGING = {
'version': 1,
'loggers': {
'django':{
'handlers': ['file'] ,
'level':'INFO'
}
},
'handlers':{
'file':{
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': 'debug.log',
}
}
}
My views.py
def Helloworld(request):
try:
s = HttpResponse("this is life")
logging.debug("this is debug log - in hw page")
logging.critical("this is critical log - in hw page")
logging.error("this is error log - in hw page")
except Exception as e:
print(e)
logging.critical("this is critical log - in hw page - exception")
logging.exception(e)
return s
My console output
Django version 3.0.6, using settings 'project.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
CRITICAL:root:this is critical log - in hw page
ERROR:root:this is error log - in hw page
INFO:django.server:"GET /hw HTTP/1.1" 200 12
My вывод файла журнала
Watching for file changes with StatReloader
"GET /hw HTTP/1.1" 200 12
C:\Users\....\views.py changed, reloading.
Watching for file changes with StatReloader
Watching for file changes with StatReloader
"GET /hw HTTP/1.1" 200 12
"GET /hw HTTP/1.1" 200 12
C:\Users\...\views.py changed, reloading.
Watching for file changes with StatReloader
C:\Users\...\views.py changed, reloading.
Watching for file changes with StatReloader
"GET /hw HTTP/1.1" 200 12
My Urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url('', include(router.urls)),
url(r'^hw$', Helloworld),
url('__debug__/', include(debug_toolbar.urls)),
]+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
Пожалуйста, дайте мне знать, где я ошибаюсь. Я хочу, чтобы тот же текст, который печатается в консоли, был записан в файл журнала.