sl容器云时代监控和仪表板实践( 二 )


单独的详细仪表板:提供单独的仪表板用于调试单个服务和组件。通过这些组件能够深入研究和调试特定服务或组件的问题。为各个仪表板保持相同的自上而下的左右结构。仪表板之间的一致性减少了调试工作。
有多种策略可以让您了解系统/应用程序的运行状况、性能或质量。 快速检测和修复对客户产生负面影响的问题所需的可见性。 通过告警、监控和日志记录的组合获得可见性。
告警
sl容器云时代监控和仪表板实践
文章插图
再好的监控和再美观仪表盘,也只是个样子,最终也要落实到响应,及时发出准确的告警是实现最快响应的基础。
告警:使用告警快速发现系统/应用程序处于对客户端产生负面影响的状态。尝试以尽可能少的告警覆盖整个系统/应用程序的健康状况。对聚合指标和统计数据发出告警,例如百分比、一段时间内的错误率、百分位数(95%,90%,60%)。调整告警以最大程度地减少误报并避免噪音。
综合:通知告警潜在问题。当触发告警时,应使用监控来快速评估情况并确定问题。确定问题后可以使用日志记录来跟踪问题的根源。
提醒重要的事情并优化静音
服务水平指标告警:确定所有系统层的最小指标集,这些指标可以捕获系统的质量和性能。当这些指标表明违反了SLA时发出告警。 从更接近客户的指标开始,然后向下工作。提醒客户端 API 错误率而不是数据库连接错误率。 监控 API 响应时间百分位数。 当第95个百分位数超过SLA时发出告警。当接到客户呼入通知时,有90% 的机会出现问题。
【 sl容器云时代监控和仪表板实践】聚合指标并捕获上下文:聚合来自不同系统层的指标以获得更准确的告警。例如,警告“响应时间高和数据库时间高”而不是“响应时间高”。为每个告警提供额外的基于文本的通知。文本应包含上下文:百分位数、监控快照、趋势。
根据SLA 调整告警级别:设置为CRITICAL或 Sev 1 仅告警指示客户端影响。 对于Sev 1告警,预计值班人员会收到通知并立即做出反应。如果某些内容已关闭但尚未对客户产生负面影响,则可以将其设置为WARNING 或Sev 2,并预计有人会在几个小时内查看它。对 Sev 2告警使用干扰较小的通知渠道,例如邮件,钉钉或者微信。根据SLA调整告警级别。如果目标是99.99可用性,则可能需要设置为CRITICAL告警,对于99.9系统可能是告警。
优化告警:对误报告警做出反应的工程师,仍需花时间验证和监控告警条件。为了减少误报,需要随时间聚合的指标发出告警。提高/降低利率的告警。将新告警部署为警告。监控其触发频率,并调整其阈值。当90%确定它们仅在出现生产问题时才会触发时,将它们提升为 CRITICAL。
总结
本文我们给出了容器云时代,基于SLA的监控、监控仪表盘以及告警该如何做。虽然仍然基于基本监控项和告警,但是更加立足于综合性和服务性,这就要求在熟悉的传统监控思想和方法基础上进行优化和完善。