【flask】项目集成Sentry收集线上错误日志
flask集成sentry分为4个步骤:
- 首先在sentry官网注册1个账号
- 然后创建1个新的项目,这里我选择的是flask,这会得到一些关于sdk的使用说明
- 接下来创建一个简单的flask项目使用sdk测试一下
- 实时在sentry的dashboard的project页面上看到提交过来的异常信息
在flask项目中配置使用sentry,步骤如下:
step1:
通过pip 安装sentry-sdk
pip3 install --upgrade 'sentry-sdk[flask]==0.13.0'
如果这样安装报错
试试这样:
pip install sentry-sdk[flask]
step2:
创建项目的时候,页面给出的示例中会给出dsn的值
在flask项目初始化app之前初始化Sentry
dsn值直接复制 sentry给出的sdk使用说明中的值就可以
import sentry_sdk
from sentry_sdk.integrations.flask import FlaskIntegration
sentry_sdk.init(
dsn="https://xxx@sentry.io/xxx",
integrations=[FlaskIntegration()]
)
app = Flask(__name__)
step3:
测试报错情况:
@app.reoute('debug-sentry')
def trigger_error():
division_by_zero=1/0
1/0会引发ZeroDivisionError错误
Traceback (most recent call last):
File "<input>", line 1, in <module>
ZeroDivisionError: division by zero
在sentry查看一下效果:
果然很强大,连出错的代码都可以显示出来
后续:sentry更新了配置
创建project时 选择alert的通知规则 ,选择2项很重要。选择第1项时,如果自己没有自定义规则,则不会收到警告通知