2016-08-03 9 views
5

Ich versuche, einfache Protokollierung zu verwenden und Fehler/Ausnahmen an Sentry senden möchten.Sentry django Konfiguration - Logger

ich die Sentry gemäß dem Dokument konfiguriert und den Test erfolgreich auf meinem dev (python manage.py raven test)

ich hinzugefügt, um die Logging-Konfiguration wie in Sentry documentation zu einer Django laufen Einstellungen

Wenn ich diesen Code setzen in meinem Ansicht, dann ist es nicht bei allen Vielleicht

import logging 
logger = logging.getLogger(__name__) 
logger.error('There was an error, with a stacktrace!', extra={ 
    'stack': True, 
}) 

arbeite ich bin etwas fehlt

Tha nks für die Hilfe

LOGGING = { 
    'version': 1, 
    'disable_existing_loggers': True, 
    'root': { 
     'level': 'WARNING', 
     'handlers': ['sentry'], 
    }, 
    'formatters': { 
     'verbose': { 
      'format': '%(levelname)s %(asctime)s %(module)s ' 
         '%(process)d %(thread)d %(message)s' 
     }, 
    }, 
    'handlers': { 
     'sentry': { 
      'level': 'ERROR', # To capture more than ERROR, change to WARNING, INFO, etc. 
      'class': 'raven.contrib.django.raven_compat.handlers.SentryHandler', 
      'tags': {'custom-tag': 'x'}, 
     }, 
     'console': { 
      'level': 'DEBUG', 
      'class': 'logging.StreamHandler', 
      'formatter': 'verbose' 
     } 
    }, 
    'loggers': { 
     'django.db.backends': { 
      'level': 'ERROR', 
      'handlers': ['console'], 
      'propagate': False, 
     }, 
     'raven': { 
      'level': 'DEBUG', 
      'handlers': ['console'], 
      'propagate': False, 
     }, 
     'sentry.errors': { 
      'level': 'DEBUG', 
      'handlers': ['console'], 
      'propagate': False, 
     }, 
    }, 
} 
+0

zeigen Sie Ihre 'settings.py' Konfiguration für' LOGGING' an. Was meinst du, es funktioniert überhaupt nicht? Versuchen Sie auch, Ihren Logger zuerst in eine Datei zu schreiben - siehe https://docs.djangoproject.com/ja/1.9/topics/logging/#examples. Schreibt der Logger in eine Datei, sendet aber nicht an Sentry? – YPCrumble

+0

Ich habe oben die LOGGING-Konfiguration hinzugefügt, ja, ich kann ein Protokoll in eine Datei schreiben, aber nicht an Sentry senden. Eine andere Sache, wenn ich Fehler erhöhe, wird es an die Wache senden. – Dilraj

Antwort

1

Integration mit Django erfordert spezielle Raven Django App und RAVEN_CONFIG in settings.py:

INSTALLED_APPS = (
    'raven.contrib.django.raven_compat', 
) 

RAVEN_CONFIG = { 
    'dsn': 'https://<key>:<secret>@sentry.io/<project>', 
} 

Haben Sie Setup sie?

Verwandte Themen