Mam prosty projekt python (non-Django), gdzie próbuję tie Raven into the logging setup.Raven's SentryHandler tłumi wyjście StreamHandler do pliku
ramach naszej aktualnej konfiguracji, używamy prostego rejestrowania config:
import logging
logging.basicConfig(format='long detailed format',
level=logging.DEBUG)
Wyjście zostaje przekierowane do pliku dziennika; w ten sposób powstaje miły, szczegółowy log, który możemy przejrzeć, kiedy zajdzie taka potrzeba.
Teraz chcemy dodać rejestrowanie błędu Raven, wiążąc je do naszej aktualnej konfiguracji rejestrowania tak że logging.error
wzywa również wynik w wiadomości wysyłane do serwera Sentry. Stosując następujący kod:
from raven import Client
from raven.conf import setup_logging
from raven.handlers.logging import SentryHandler
raven = Client(environ.get('SENTRYURL', ''), site='SITE')
setup_logging(SentryHandler(raven, level=logging.ERROR))
Błędy są z powodzeniem wysłane do Sentry, ale mam teraz tylko coraz pojedynczą linię wyjścia pliku:
DEBUG: Configuring Raven for host: <DSN url>
Wszystkie inne wyjścia plik - od logging.debug
do logging.error
- jest tłumiony.
Jeśli skomentuję linię setup_logging
, otrzymam wynik pliku, ale nie wystąpi błąd Sentry. Co ja robię źle?