我在《我的监控世界观》1 ~ 4 中更多的阐述了对于某个监控点的监控、存储、展现。但是在现实世界中,整个世界的联系更像是一个图,每个点可以是某个监控点,而边是他们之间的调用关系或者数据流
举例:
webserver –> mysql
对于一个最简单的web 服务, 它可能有两部分组成,webserver 和 mysql存储店铺、商品信息,webserver 服务直接和浏览器用户进行交互。在这样一个业务场景中,webserver 上有的监控点,可能包括单位时间内的UV、PV,而mysql 上的监控点可能有连接数,每秒请求数等等
这样,我们就把监控点和我们的自身的业务逻辑紧密的结合起来了。并且我们可以想到每一家公司的业务是完全不同的,所以如果我们把监控也分出层次的话,我们发现监控也是有层次的
3 业务层级的监控 |
---|
2 监控点数据收集、存储、聚合 |
1 监控点数据采集 |
1)监控点数据的采集无法采取通行方案
除了基础类型的监控比如 CPU使用率、load、磁盘使用率
但是类似UV, PV 的业务指标很难统一起来
2)监控点数据收集、存储、聚合 是可以使用通行方案去解决的
最近我看到一篇文章提出用使用ES来做后聚合,可以无需做先聚合
3)业务层级的监控要反映业务流中各个应用,服务之间的调用关系,特别要反映数据的流向,流量的大小等等。数据流是贯穿各个模块的最核心的元素
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/woshiaotian/article/details/48137949