Switch to inbuilt django logging, disable the Sentry hacks

This commit is contained in:
2011-09-09 14:41:26 +01:00
parent 33fef0560e
commit 43dea4127e
3 changed files with 41 additions and 5 deletions

View File

@@ -1,7 +1,6 @@
import sys import sys
import logging import logging
from sentry.client.handlers import SentryHandler
from piston.resource import Resource from piston.resource import Resource
class SentryResource(Resource): class SentryResource(Resource):
@@ -9,7 +8,6 @@ class SentryResource(Resource):
def error_handler(self, e, request, meth, em_format): def error_handler(self, e, request, meth, em_format):
logger = logging.getLogger('piston') logger = logging.getLogger('piston')
logger.addHandler(SentryHandler())
logger.error('Piston exception: %s(%s)' % (e.__class__.__name__, e), exc_info=sys.exc_info(), logger.error('Piston exception: %s(%s)' % (e.__class__.__name__, e), exc_info=sys.exc_info(),
extra={'data': {'handler': meth.im_class, 'request': request, 'get': dict(request.GET), 'post': dict(request.POST) }}) extra={'data': {'handler': meth.im_class, 'request': request, 'get': dict(request.GET), 'post': dict(request.POST) }})

View File

@@ -145,3 +145,43 @@ GARGOYLE_SWITCH_DEFAULTS = {
} }
} }
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'handlers': {
'null': {
'level':'DEBUG',
'class':'django.utils.log.NullHandler',
},
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
},
'sentry': {
'level': 'DEBUG',
'class': 'sentry.client.handlers.SentryHandler',
},
},
'loggers': {
'()': {
'level': 'WARNING',
'handlers': ['sentry'],
},
'sentry.errors': {
'level': 'DEBUG',
'handlers': ['null'],
'propagate': False,
},
'django': {
'handlers':['null'],
'propagate': True,
'level':'INFO',
},
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': False,
},
}
}

View File

@@ -6,7 +6,6 @@ from django.db.models import signals
from django.contrib.auth.models import User from django.contrib.auth.models import User
from celery.signals import task_failure from celery.signals import task_failure
from celery.decorators import task from celery.decorators import task
from sentry.client.handlers import SentryHandler
from eve_api.models import EVEAccount, EVEPlayerCorporation, EVEPlayerAlliance from eve_api.models import EVEAccount, EVEPlayerCorporation, EVEPlayerAlliance
from eve_api.app_defines import * from eve_api.app_defines import *
@@ -15,10 +14,9 @@ from reddit.tasks import update_user_flair
from utils import installed from utils import installed
# Add Sentry error logging for Celery # Add Sentry error logging for Celery
logger = logging.getLogger('task')
logger.addHandler(SentryHandler())
def process_failure_signal(exception, traceback, sender, task_id, signal, args, kwargs, einfo, **kw): def process_failure_signal(exception, traceback, sender, task_id, signal, args, kwargs, einfo, **kw):
exc_info = (type(exception), exception, traceback) exc_info = (type(exception), exception, traceback)
logger = logging.getLogger('celery.task')
logger.error('Celery job exception: %s(%s)' % (exception.__class__.__name__, exception), exc_info=exc_info, logger.error('Celery job exception: %s(%s)' % (exception.__class__.__name__, exception), exc_info=exc_info,
extra={'data': {'task_id': task_id, 'sender': sender, 'args': args, 'kwargs': kwargs, }}) extra={'data': {'task_id': task_id, 'sender': sender, 'args': args, 'kwargs': kwargs, }})
task_failure.connect(process_failure_signal) task_failure.connect(process_failure_signal)