我刚安装了django-sentry,它捕获异常就好了。然而,由于某种原因,logger.warning和logger.error的调用没有保存到Sentry中。django-sentry不记录警告,错误等
哨兵执行:
import logging
from sentry.client.handlers import SentryHandler
logger = logging.getLogger()
# ensure we havent already registered the handler
if SentryHandler not in map(lambda x: x.__class__, logger.handlers):
logger.addHandler(SentryHandler())
# Add StreamHandler to sentry's default so you can catch missed exceptions
logger = logging.getLogger('sentry.errors')
logger.propagate = False
logger.addHandler(logging.StreamHandler())
记录来电:
logger.warning("Category is not an integer", exc_info=sys.exc_info(), extra={'url': request.build_absolute_uri()})
任何想法? 谢谢!
这方面的更新?我有一个类似的问题,除了Sentry日志记录在我的开发服务器上正常工作,但不是我的生产服务器。我的产品具有与上面列出的完全相同的症状。 – 2011-06-08 03:24:44
您在哪里获得记录器以保存警告并添加Sentry处理程序时执行?例如,如果您在manage.py中使用它,则无法在生产中执行它。 – Alerion 2011-06-13 15:49:43
我在记录警告之前添加了Sentry记录器,所以我确信它正在执行。不过,我不知道为什么它可以在我的开发服务器上运行,而不是我的生产服务器。 – 2011-06-14 02:05:54