airbrake.io的Python集成
项目描述
Airbrake python notifier集成
基于Airbrake python notifier构建的集成,用于与流行的框架和库快速集成。
简介
Airbrake 是一个在线工具,它为您的任何Python应用程序提供强大的异常跟踪。通过这种方式,它允许您轻松地审查错误,将错误与单个代码片段相关联,并追踪到最近的变化。Airbrake仪表板提供简单的分类、搜索和优先级排序,以便在发生错误时,您的团队能够快速确定根本原因。
主要功能
此库建立在 Airbrake Python 之上。Airbrake Python 和 Airbrake Python Integrations 之间的区别在于,airbrake-integrations 包仅是一个与框架或其他库集成的集合。airbrake 包是执行异常发送和其他繁重任务的内核库。
通常情况下,您只需依赖此包,选择您感兴趣的集成,并按照其说明操作。如果您使用的框架或应用程序没有可用的集成,您可以使用 airbrake
包,并完全忽略此包。
此包中可用的集成列表包括
- Django
- Flask
- Twisted
安装
要安装 airbrake-integrations,请运行
pip install airbrake-integrations
强烈建议您将此包添加到您的 requirements.txt
文件中
pip freeze > requirements.txt
配置
Django
要安装中间件并在视图中捕获异常
- 请将以下内容添加到您的
settings.py
文件中;将值替换为您的项目 ID 和密钥
AIRBAKE = {
"PROJECT_ID": 123,
"API_KEY": "123abcde",
"ENVIRONMENT": "test"
}
- 将中间件添加到您的
settings.py
文件中;确保 airbrake 中间件位于列表顶部。Django 从列表的末尾开始按顺序处理中间件,因此将其放置在末尾将捕获所有异常。
MIDDLEWARE = [
'airbrake_integrations.django.middleware.AirbrakeNotifierMiddleware',
...
]
请注意,任何捕获异常且不允许它们流动的中间件都不会被发送到 airbrake。确保任何也处理异常的中间件都会抛出原始异常非常重要。
def process_exception(self, request, exception):
raise exception
一个示例 Django 应用可以在 /examples/django 中找到
Flask
要捕获异常,请使用 Airbrake 扩展
确保 airbrake 配置字段已设置
AIRBRAKE_PROJECT_ID = 123456
AIRBRAKE_API_KEY = '1290180gsdf8snfaslfa0'
AIRBRAKE_ENVIRONMENT = "production"
然后安装扩展!
from airbrake_integrations.flask.app import AirbrakeApp
app = Flask(__name__)
app.config.from_pyfile('config.cfg')
ab = AirbrakeApp(app)
一个示例 Flask 应用可以在 /examples/flask 中找到
要运行示例
export FLASK_APP=example.py
flask run
Twisted
from airbrake_integrations.twisted.observer import AirbrakeLogObserver
from twisted.logger import globalLogBeginner, Logger
settings = {
"AIRBRAKE": {
"PROJECT_ID": 1234,
"API_KEY": "1234567890asdfghjkl"
}
}
observers = [AirbrakeLogObserver(settings)]
globalLogBeginner.beginLoggingTo(observers, redirectStandardIO=False)
log = Logger()
try:
raise Exception("A gremlin in the system is angry")
except:
log.failure("Error")
这创建了一个观察者,它会查看 globalLogPublisher
Twisted 对象,并检查所有事件以查找任何可能的异常。
一个示例 Flask 应用可以在 /examples/twisted 中找到
项目详情
airbrake-integrations-0.1.5.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 85548a1c83ab782d33c4472d9400ea5d12eac155b7ee2ab3bf471c503355a6f1 |
|
MD5 | bc3672b718f5a110bb1759c1e941a98a |
|
BLAKE2b-256 | 47268e8c5cd24f694973935f8bee5a02ee84ce1c1eeb5c8809318c7b4ce9d652 |