Ich versuche einen Logger für meine Django App zu bekommen. Ich rufe den Logger mit:Django Logger erstellt Datei, schreibt aber nicht
logger = logging.getLogger(__name__)
logger.info("some stuff")
innerhalb einer Funktion in meiner views.py.
Aber es funktioniert nicht, die Datei, die das Protokoll enthalten soll, erstellt, aber nichts darin geschrieben, hier sind die Einstellungen:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters':{
'standard': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s'
},
},
'handlers': {
'file_INFO': {
'level': 'INFO',
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(BASE_DIR, 'logs/site.logs'),
'maxBytes': 1024 * 1024 * 15, # 15MB
'backupCount': 10,
'formatter': 'standard',
},
'console_INFO': {
'level': 'INFO',
'class': 'logging.StreamHandler',
}
},
'loggers': {
'INFO': {
'handlers': ['file_INFO', ],
'level': 'INFO',
'propagate': True,
},
},
}
Jede Idee?
Danke!
Ich füge ein Missverständnis hinzu, wie der Logger funktioniert. Ich dachte, dass "__name__" wäre der Name einer Instanz eines Loggers und das, was ich in den Logger-Einstellungen definieren, sind unterschiedliche Verhaltensweisen, die ein Logger kann ich z. B. auf der Ebene eines Logging-Ticket oder den Namen von das Modul, von dem es gesendet wurde. – Nicolas