《SRE:Google运维解密》中提出,监控系统的四个黄金指标是:延迟(Latency)、流量(Traffic)、错误(Errors)、饱和度(Saturation)。
假设一个web服务的http请求平均耗时为100ms,单看这个数据觉得服务性能没问题,但可能有1%的请求耗时超过5s,而这1%的请求就有可能引发用户投诉或其它风险。由于是计算的平均值而容易被忽略,最好的方法是将请求延迟分段统计。
监控数据的高频率收集、存储、分析成本很高,要根据监控对象以及监控目标合理设置监控周期、监控频率等。
现在很多公司抱着“宁可错杀一万,也不能放走一个”的原则制定监控标准,这样做的后果就是运维人员疲于奔命,时间一长就会造成"狼来了"的后果。增加新的监控规则时,可以遵循以下原则:
以上关于监控指标的讨论累加起来就会形成一个复杂的监控系统。
复杂是没有止境的,过于复杂的监控系统维护起来麻烦,而且经常出问题。
保持监控系统相对独立、清晰简单。和其他系统保持松耦合,可以采用API来收集性能数据。
监控系统需要跟随不断演变的软件一起变化,软件经常重构,负载特性和性能目标也经常变化。现在的某个不常见的、自动化比较困难的告警可能很快就会变成一个经常触发、需要一个临时的脚本来应对的问题。这时,应该去寻找和消除背后的根源问题:如果这种解决办法不可行,那么这条告警的应对就必须要完全自动化。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。