 告警OnCall事件中心建设方法白皮书
备的监控可能采用的 Zabbix,Kubernetes 的监控可能 用的 Prometheus(Kubernetes 可能有多套,以至于 Prometheus 可能有多套)或者 Nightingale, 日志的监控可能用的 Elastalert,如果上云了,可能还会有多套不同的云监控(尤其是多云场景下)。 监控系统的重心,通常是采集、存储、可视化、生成告警事件,但通常都不具有完备的事件后续处理能 这种产品,一定程度上是可以解决一些告警过多的问题,但如果能从告警规 则的源头做好优化,自然是事半功倍。很多公司的告警规则配置没有原则可循,每次故障复盘先看告警是 否漏报,一线工程师为了不背锅,自然是尽量多地提高告警覆盖面,但这么做的后果,就是告警过多,无 效告警占多数,长此以往,工程师疲惫不堪。 那么告警规则的配置应该遵照一个什么原则呢?虽然每个公司业务不同,总有一些通用的原则可循吧?的 员管理的负担),其次是个人(最不推荐,难以维护)。FlashDuty 提供了值班表功能,可以做日常排班以 及节假日临时排班: 在 FlashDuty 里,通知的对象不是原始的告警事件,因为原始的告警事件可能会非常多,如上文所述, FlashDuty 会把事件聚合为告警,告警聚合为故障,最终通知的是故障。那具体如何聚合呢? 告警聚合 事件到告警的聚合比较容易,通常是用类似下面的算法来计算不同事件的关联关系:0 码力 | 23 页 | 1.75 MB | 1 年前3 告警OnCall事件中心建设方法白皮书
备的监控可能采用的 Zabbix,Kubernetes 的监控可能 用的 Prometheus(Kubernetes 可能有多套,以至于 Prometheus 可能有多套)或者 Nightingale, 日志的监控可能用的 Elastalert,如果上云了,可能还会有多套不同的云监控(尤其是多云场景下)。 监控系统的重心,通常是采集、存储、可视化、生成告警事件,但通常都不具有完备的事件后续处理能 这种产品,一定程度上是可以解决一些告警过多的问题,但如果能从告警规 则的源头做好优化,自然是事半功倍。很多公司的告警规则配置没有原则可循,每次故障复盘先看告警是 否漏报,一线工程师为了不背锅,自然是尽量多地提高告警覆盖面,但这么做的后果,就是告警过多,无 效告警占多数,长此以往,工程师疲惫不堪。 那么告警规则的配置应该遵照一个什么原则呢?虽然每个公司业务不同,总有一些通用的原则可循吧?的 员管理的负担),其次是个人(最不推荐,难以维护)。FlashDuty 提供了值班表功能,可以做日常排班以 及节假日临时排班: 在 FlashDuty 里,通知的对象不是原始的告警事件,因为原始的告警事件可能会非常多,如上文所述, FlashDuty 会把事件聚合为告警,告警聚合为故障,最终通知的是故障。那具体如何聚合呢? 告警聚合 事件到告警的聚合比较容易,通常是用类似下面的算法来计算不同事件的关联关系:0 码力 | 23 页 | 1.75 MB | 1 年前3
 B站统⼀监控系统的设计,演进
与实践分享devops • 热爱新技术,热爱开源 • ⼩小宅男 故事的开始 B站炸了了.舆情监控(括弧笑脸) 我们的挑战 • 技术栈多 • 产品模块复杂 • 业务爆发式增⻓长 • 运维要求⾼高 当前情况: • 覆盖率低 • 误报,漏漏报多 • 告警⻛风暴暴 监控问题爆发: 重新定义的监控系统 ✦ 完整的监控体系 ✦ 科学的告警策略略 ✦ 统⼀一的告警中⼼心 完整的监控体系 target target IDC_2 获取 监控⽬目标 告警规则 web push rule push rule 获取监控数据 获取监控数据 推送告警 1. 降低编写规则的成本 2. 降低多idc维护成本 规则管理理⻚页⾯面 例例⼦子 - 业务监控 稿件 账号 Feed PAAS托管 服务树 container http server sdk 注册 获取target 投稿数量量 订单数据 在线⼈人数 … ⻩黄⾦金金指标 业务指标 少量量事件 dashboard 报表 告警 统⼀一的告警中⼼心 解决什什么问题? • 告警源头多 • 告警⻛风暴暴, ⼤大量量重复告警 • 发送告警渠道多 • 重要告警没有及时到达 • 优化告警没有数据依据 问题 • 告警标准化 • 告警收敛 • 告警渠道管理理 • 告警升级 • 告警报表0 码力 | 34 页 | 650.25 KB | 1 年前3 B站统⼀监控系统的设计,演进
与实践分享devops • 热爱新技术,热爱开源 • ⼩小宅男 故事的开始 B站炸了了.舆情监控(括弧笑脸) 我们的挑战 • 技术栈多 • 产品模块复杂 • 业务爆发式增⻓长 • 运维要求⾼高 当前情况: • 覆盖率低 • 误报,漏漏报多 • 告警⻛风暴暴 监控问题爆发: 重新定义的监控系统 ✦ 完整的监控体系 ✦ 科学的告警策略略 ✦ 统⼀一的告警中⼼心 完整的监控体系 target target IDC_2 获取 监控⽬目标 告警规则 web push rule push rule 获取监控数据 获取监控数据 推送告警 1. 降低编写规则的成本 2. 降低多idc维护成本 规则管理理⻚页⾯面 例例⼦子 - 业务监控 稿件 账号 Feed PAAS托管 服务树 container http server sdk 注册 获取target 投稿数量量 订单数据 在线⼈人数 … ⻩黄⾦金金指标 业务指标 少量量事件 dashboard 报表 告警 统⼀一的告警中⼼心 解决什什么问题? • 告警源头多 • 告警⻛风暴暴, ⼤大量量重复告警 • 发送告警渠道多 • 重要告警没有及时到达 • 优化告警没有数据依据 问题 • 告警标准化 • 告警收敛 • 告警渠道管理理 • 告警升级 • 告警报表0 码力 | 34 页 | 650.25 KB | 1 年前3
 PromQL 从入门到精通by相反的是without): avg(mem_available_percent{app=~"clickhouse|canal"}) by (app) 函数 Prometheus 函数非常多,具体文档参考:https://prometheus.io/docs/prometheus/latest/ querying/functions/ 这一节我们举例说明一些常用的函数。 absent_over_time 分位值,这个是否个问题? 笔者看来,这是个问题,但是这个问题不是特别严重,如果要求全局的90分位值,可以把所有 实例的90分位值取个平均,虽然不是那么准确,也凑合能用。而实际上,对于一个服务部署多 个实例的场景,通常这多个实例是负载均衡的,查看其中一个实例的分位值和查看总体的分位值 理论上差不太多。而且,如果某个机器有问题,比如某个机器磁盘故障,导致部署在上面的实例 异常,延迟变高,其他0 码力 | 16 页 | 2.77 MB | 1 年前3 PromQL 从入门到精通by相反的是without): avg(mem_available_percent{app=~"clickhouse|canal"}) by (app) 函数 Prometheus 函数非常多,具体文档参考:https://prometheus.io/docs/prometheus/latest/ querying/functions/ 这一节我们举例说明一些常用的函数。 absent_over_time 分位值,这个是否个问题? 笔者看来,这是个问题,但是这个问题不是特别严重,如果要求全局的90分位值,可以把所有 实例的90分位值取个平均,虽然不是那么准确,也凑合能用。而实际上,对于一个服务部署多 个实例的场景,通常这多个实例是负载均衡的,查看其中一个实例的分位值和查看总体的分位值 理论上差不太多。而且,如果某个机器有问题,比如某个机器磁盘故障,导致部署在上面的实例 异常,延迟变高,其他0 码力 | 16 页 | 2.77 MB | 1 年前3
共 3 条
- 1













