Skywalking介绍
一、 选择Skywalking的原因
二、 Skywalking简介
三、 Skywalking搭建
四、 SpringBoot配置skywalking
五、 skywalking UI介绍
六、 更换存储为MYSQL
七、 告警
告警的核心由一组规则驱动,这些规则定义在config/ Alarm -settings.yml文件中。 告警规则的定义分为三部分。
- 告警规则。它们定义了应该如何触发度量警报,应该考虑什么条件。
- [网络钩子](#Webhook}。当警告触发时,哪些服务终端需要被告知。
- gRPC钩子. 远程gRPC方法的主机和端口,告警触发后调用.
1.告警流程
skywalking发送告警的基本原理是每隔一段时间轮询skywalking-collector收集到的链路追踪的数据,再根据所配置的告警规则(如服务响应时间、服务响应时间百分比)等,如果达到阈值则发送响应的告警信息。发送告警信息是以线程池异步的方式调用webhook接口完成,(具体的webhook接口可以使用者自行定义),从而开发者可以在指定的webhook接口中自行编写各种告警方式,钉钉告警、邮件告警等等
2.默认规则
- 最近 3 分钟内服务平均响应时间超过 1 秒。
- 服务成功率在最近 2 分钟内低于80%。
- 服务响应时间在最近 3 分钟内低于1000 毫秒.
- 服务实例在最近 2 分钟内的平均响应时间超过 1 秒。
- 端点平均响应时间在最近 2 分钟内超过1秒。
- 数据库访问平均响应时间在过去 2 分钟内超过 1 秒。
- 端点之间平均响应时间在最近 2 分钟内超过 1 秒。
3.告警规则
告警规则主要有以下几点
- Rule name。 在告警信息中显示的唯一名称。必须以_rule结尾。
- Metrics name。 也是oal脚本中的度量名。
- Include names。 其下的实体名称都在此规则中。比如服务名,终端名。
- Threshold。 阈值。
- OP。 操作符,支持 >, <, =。
- Period.。 多久检查一次当前的指标数据是否符合告警规则这是一个时间窗口,与后端部署环境时间相匹配。
- Count。 在一个Period窗口中,如果values超过Threshold值(按op),达到Count值,需要发送警报。
- Silence period。 在时间N中触发报警后,在TN -> TN +period这个阶段不告警。默认情况下,它和Period一样,这意味着相同的告警(在同一个Metrics name拥有相同的Id)在同一个Period内只会触发一次
4.发送警告邮件
比如:https://www.cnblogs.com/yizhipanghu/p/14863449.html