企业如何做好业务监控​?

企业如何做好业务监控​?插图亿华云

为什么要做业务监控?

通常情况下,大部分企业都会做基础设施监控,觉得做好基础设施监控就可以解决大部分问题。至于业务方面监控,等有人来说了再处理就行。殊不知这种想法会有诸多隐患:

1、运维比业务部门经常晚发现业务有问题。

因为业务有问题会最先爆出来,等到基础设施出问题往往已经过了几分钟了。此时业务可能已经焦头烂额了。

2、由于发现业务问题较晚,这个时候有相互调用关系的业务可能也出现了问题。

导致业务故障定位较困难。如果做了业务监控,且做到妙极监控,那么当大量业务出现问题时,我们就能根据最先告警的来判断是哪个业务故障引起的。

3、危害公司利益和自身前途。

第三点也是最要命的,由于上述两个问题导致运维在业务部门乃至整个公司留下不良的影响,长此以往不仅会给公司带来经济损失,对自己的前途也是非常不利的。

因此做好业务监控,可以说是每个运维人员必须要完成的一个任务。

业务监控要做哪些?

企业如何做好业务监控​?插图1亿华云

1、Web站点监控

企业如何做好业务监控​?插图2亿华云

对公网服务的Web站点,无论是SAAS的还是在我们自己部署的站点都需要进行站点URL监控。公网站点监控建议使用商业服务进行监控,因为这些服务通常可以从多个地域来检测你当前站点的访问情况,通常是站点状态码和响应速度的监控。

对内网服务的Web站点也需要监控,因为内网是无法从公网访问的,所以内网建议使用自建Prometheus去监控站点的状态和响应速度。

2、健康检查接口

此处做服务健康检查接口监控,提供一个或多个监控API,监控应用自身状态、监控应用和数据库连接状态,监控应用和中间件连接状态。

健康检查接口建议统一使用/health路径的接口,如果是三个接口那么/app_health代表服务、/db_name_health代表数据库连接状态、/middleware_name_health代表中间件连接状态。

单独接口返回APP_OK,db_name_OK,middleware_name_OK,多个接口返回OK表示服务和数据库和中间件正常。

有些JAVA的Sprint框架是自带健康检查接口的,这些直接使用即可。

3、日志监控

首先,所有业务日志要接入日志中心。哪些关键字需要做告警?需要项目经理和开发负责人讨论给出。确保有必要的关键字做告警,避免告警的泛滥。

4、链路追踪

企业如何做好业务监控​?插图3亿华云

链路追踪可以有选择性的接入,如果业务比较简单平时运行着也没有什么问题可以不用接入。一般业务如果上下游调用链较多,且业务逻辑比较复杂,同时会有大并发需求,对响应速度要求也比较高的可以接入。

主要给用户解决找出响应时间较长的API,并查看是否函数中存在问题。有些商业的链路追踪工具还可以看到SQL语句的问题。这些都可以帮助开发人员更好更快的解决业务代码中的问题。

5、大屏监控

·

THE END
Copyright © 2024 亿华云