J'ai cherché toutes les questions similaires, et rien n'a aidé. J'ai créé le journaliste 'universel' comme ceci :
'': {
'handlers': ['logfile','console'],
'level': 'WARNING',
'propagate': True,
},
afin de pouvoir écrire
import logging
log = logging.getLogger(__name__)
et obtenir le journaliste dans n'importe quel fichier de mon application Django (j'ai vu cette approche quelque part sur Stack Overflow), et il y a plusieurs jours, cela fonctionnait pour moi, mais pas maintenant et je ne pouvais pas comprendre pourquoi.
Voici tous mes paramètres de journalisation :
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'standard': {
'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
'datefmt' : "%d/%b/%Y %H:%M:%S"
},
},
'handlers': {
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler'
},
'logfile': {
'level':'WARNING',
'class':'logging.handlers.RotatingFileHandler',
'filename': "/opt/telefacer_1/var/log/inapplog",
'maxBytes': 50000,
'backupCount': 2,
'formatter': 'standard',
},
'console':{
'level':'WARNING',
'class':'logging.StreamHandler',
'formatter': 'simple'
},
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': True,
},
'': {
'handlers': ['logfile','console'],
'level': 'WARNING',
'propagate': True,
},
}
}