SpringCloud链路追踪SkyWalking-第七章-告警

目录

  • 概述
  • 告警规则
  • Webhook(网络钩子)
  • 告警
  • 配置webhook
  • 第三方告警推送

概述

SkyWalking告警功能是在6.x版本新增的,其核心由一驱动,这些规则定义在config/alarm-settings.yml文件中.告警规则般义分为两部分:
1 .告警规则:它们定义了应该如何触发度量劲爆,应该考虑什么条件.
2 .Webhook(网络钩子):定义当警告触发时,哪些服务终端需要被告知

官方文档:https://github.com/apache/skywalking/blob/8.9.1/docs/en/setup/backend/backend-alarm.md

告警规则

SkyWalking的发行版都会默认提供config/alarm-settings.yml文件,里面预先定义了一些常用的告警规则.如下:

  • 1 .过去3分钟内服务平均响应时间超过1秒.
  • 2 .过去2分钟服务成功率低于80%.
  • 3 .过去3分钟内服务响应时间超过1s的百分比
  • 4 .服务实例在过去2分钟内平均响应时间超过1s,并且实例名称与正则表达式匹配.
  • 5 .过去2分钟内端点平均响应时间超过1秒.
  • 6 .过去2分钟内数据库访问平均响应时间超过1秒。
  • 7,过去2分钟内端点关系平均响应时间超过1秒.

这预定义的告警规则,打开config/alarm-settings.yml文件接口查看

SpringCloud链路追踪SkyWalking-第七章-告警_第1张图片

告警规则配置项的说明:

  • Rule name:规则名称,也是在告警信息中显示的唯一名称,必须以rule结尾,前缀可自定义
  • Metrics name:度量名称,取值为oal脚本中的度量名,目前只支持long、double和int类里洋用Official OAL script
  • Include names:该规则作用于哪些实体名称,比如服务名,终端名(可选,默认为全部)
  • Exclude names:该檄蚱不用于哪些实体名称,比如服务名,终端名(可选,默认为空)
  • Threshold:阈值
  • op:操作?5,目前支持>、<、=
  • Period:多久告警规则需要被核实一下.这是一W1 司窗口,与后端部詈环境时间相匹配
  • Count:
  • message:告警消息

Webhook(网络钩子)

Webhook可以筒单理解为是一种Web层面的回调机制,通常由一些事件触发,与代码中的事件回调类似,只不过是Web层面的。由于是Web层面的,所以当事件发生时,回调的不再是代码中的方法或函数,而是服务接口。
例 如,在告警这个场景,告警就是一个事件.当该事件发生时,SkyWalking就会主动去调用一个配置好的接口,该接口就是所谓的Webhook.
SkyWalking的告警消息会通过 HTTP 请求进行发送,请求方法为 POST, Content-Type 为 application/json,其JSON 数据实基于List

[{
	"scopeld": 1,
	"scope": "SERVICE",
	"name": "serviceA",
	"id0": 12,
	"id1": 0,
	"rule'ame": "service_resp_time_rule",
	"alarmMessage": "alarmMessage xxxx",
	"startTime": 1560524171000
}, {
	"scopeld": 1,
	"scope": "SERVICE",
	"name": "serviceB",
	"id0": 23,
	"id1": 0,
	"ruleXame": "service_resp_time_rule",
	"alarmMessage": "alarmMessage yyy",
	"startTime ": 1560524171000
}]

告警

SpringCloud链路追踪SkyWalking-第七章-告警_第2张图片

配置webhook

SpringCloud链路追踪SkyWalking-第七章-告警_第3张图片
发送邮件
SpringCloud链路追踪SkyWalking-第七章-告警_第4张图片

第三方告警推送

SpringCloud链路追踪SkyWalking-第七章-告警_第5张图片

你可能感兴趣的:(开发组件,spring,cloud,skywalking,java)