- 配置邮箱
- mail.backend: ‘smtp’ # Use dummy if you want to disable email entirely
- NOTE: The following 2 configs (mail.from and mail.list-namespace) are set
- through SENTRY_MAIL_HOST in sentry.conf.py so remove those first if
- you want your values in this file to be effective!
- The email address to send on behalf of
- 设置报警规则
- 制造一些很慢的访问
- 遇到的坑
在前面的探索中,我们看到了如何在Sentry管理界面中查看性能、错误等信息。但如果我们手动在页面查看发生了哪些错误,会非常耗时耗力,因此可以配置报警功能Alert
配置邮箱
首先我们配置一个可以通过 Sentry 服务发送邮件的邮箱配置
大部分的
Sentry配置可以通过Sentry管理界面配置,但是有些默认配置,比如代表Sentry服务的邮箱,我们不希望通过Sentry管理界面修改,但可以通过下面文件修改cd onpremisevim ./sentry/config.yml
选择一个邮箱账号作为
Sentry服务邮箱账号,比如我选择的是我的阿里企业邮箱,找到他们的- 发件服务地址:例如阿里云企业邮箱是
smtp.mxhichina.com - 该邮箱账号
- 该邮箱密码
- 发件服务地址:例如阿里云企业邮箱是
- 将这些信息填写到
onpremise/sentry/config.yml文件中
```vimmail.backend: ‘smtp’ # Use dummy if you want to disable email entirely
mail.host: ‘smtp.qq.com’ // 已qq邮箱为例 mail.port: 465 // 25 也可以 mail.username: ‘xxx@xxx.com’ // 邮箱 mail.password: ‘xxxxxx’ // 邮箱授权码 https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256 mail.use-tls: false mail.use-ssl: true //
NOTE: The following 2 configs (mail.from and mail.list-namespace) are set
through SENTRY_MAIL_HOST in sentry.conf.py so remove those first if
you want your values in this file to be effective!
The email address to send on behalf of
mail.from: ‘xxx@xxx.com’ // 与邮箱名一致
- 停止 `Sentry` 服务```bashdocker-compose down
启动
Sentry服务docker-compose up -d
测试
Sentry服务能否发送邮件- 点击
Sentry管理界面左上角头像图标,在下拉框中选择Admin,在接下来的菜单中选择Mail - 可以看到刚才配置的邮箱信息
- 在页面最底部点击
Send a test email to xxx@xxx.xxx - 在
xxx@xxx.xxx邮箱中查看是否收到Sentry发送的邮件
- 点击
设置报警规则
我们可以设置一些报警规则,比如性能、错误,和对应的阈值。当触发报警规则后,会发送一封邮件到指定的邮箱,然后可以点击查看报警详情
- 在
Sentry管理界面 -> Alerts页,可以查看、新增、编辑、删除报警规则 - 点击
Create Alert Rule按钮 - 在新建报警规则页,选择一个监控的内容,分为
Errors、Performance、Other - 以
Performance的LCP为例,选择之,并点击Set Conditions
- 在
Filter events条件设置中,可以对evironment筛选,选择All - 在
2. Select function and time interval,可以设置报警程序定时任务的间隔时间,以及在间隔时间内监控的内容,选择P50 over 1 minute,表示每1分钟总结一次,如果超过50%的transaction超过了阈值,则报警 - 接下来设置
阈值,在3. Set thresholds to trigger alert中,分别设置Critical(危急)、Warning(警告)、Resolved(满足)的阈值,为了容易看到效果,我们分别设置500、400、300,单位毫秒
- 在
4. Perform actions中设置报警后发送的邮件接收人 - 在
5. Add a rule name and team设置本条报警规则的名称(例如,“Sentry监控到:超过50%的样本的LCP超过了 500ms !”)和可以编辑这条报警规则的人,名称会体现在邮件内容中
制造一些很慢的访问
打开浏览器cra-test页面,在 devtools -> network -> 节流模式 中选择 slow 3G,多刷新几次页面,这些页面加载速度很慢,便会触发报警,很快我们会收到邮件,点击可以查看详情
遇到的坑
- 测试邮件通过了,但是警告邮件收不到!!!!!😂搞了很久想不明白
解决
效果
- 配置文件出错;是因为配置文件代码没有顶格;因此,将#注释符去掉后代码要顶格不要留有空格

./sentry/config.yml


