本文整理汇总了Python中raven.base.Client.create_from_record方法的典型用法代码示例。如果您正苦于以下问题:Python Client.create_from_record方法的具体用法?Python Client.create_from_record怎么用?Python Client.create_from_record使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类raven.base.Client
的用法示例。
在下文中一共展示了Client.create_from_record方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: SentryHandler
# 需要导入模块: from raven.base import Client [as 别名]
# 或者: from raven.base.Client import create_from_record [as 别名]
class SentryHandler(logging.Handler):
def __init__(self, *args, **kwargs):
if len(args) == 1:
self.client = args[0]
elif 'client' in kwargs:
self.client = kwargs['client']
elif len(args) == 2 and not kwargs:
servers, key = args
self.client = Client(servers=servers, key=key)
else:
self.client = Client(*args, **kwargs)
logging.Handler.__init__(self)
def emit(self, record):
# from sentry.client.middleware import SentryLogMiddleware
# # Fetch the request from a threadlocal variable, if available
# request = getattr(SentryLogMiddleware.thread, 'request', None)
self.format(record)
# Avoid typical config issues by overriding loggers behavior
if record.name == 'sentry.errors':
print >> sys.stderr, "Recursive log message sent to SentryHandler"
print >> sys.stderr, record.message
return
self.format(record)
try:
self.client.create_from_record(record)
except Exception:
print >> sys.stderr, "Top level Sentry exception caught - failed creating log record"
print >> sys.stderr, record.msg
print >> sys.stderr, traceback.format_exc()
return