目前我的大部分成果都是以微服务方式运行的,我希望能够实时的了解服务的运行状况,必要时发出告警。
内容 1 目标功能监控对象观察三方面:连通性、流量、负载。
1 在每个时隙,监控对象都会监控连通性及负载(服务能力) 2 在每个规定的窗口,监控对象统计流量,含流入和流出(应用现状)
每个监控对象将会以markdown形式汇聚需要汇报的信息,需要通知时,将按照重要等级以及冷静时隙的控制发出消息。
2 空间命名考虑微服务(主动汇报)与监控任务(主动巡查)。
这里的监控数据希望以扁平字典的方式存储,那么就需要通过命名规则来进行有效的区分(不同的任务)以及快速的获取。
之前做通用接口时发现基本上按照三级编号就可以有效的进行类型的唯一识别(似乎比较符合3比特定律,人的大脑一次性最多只能处理3个比特为的逻辑复杂度)。
三比特命名 MainType + SubType + VarName : Value 。其中MainType最好以驼峰体命名,SubType 最好以驼峰体或者数字,VarName 可以使用小写英文加数字加下划线。通常在VarName 最后位置以下划线加上数据类型来提供额外信息。