一、为什么需要监控服务?
- 定位问题,方便快速找到服务调用链路中出现问题的服务。
- 接口性能分析
- 服务间调用关系
- 服务告警
二、常用的监控工具
- Springboot-admmin 功能比较单一,一般不采用
prometheus_Grafana比较全面的监控工具,功能很强大,企业中最常用,但是搭建流程复杂- zipkin SpringCloud推荐的链路追踪工具,跟代码有耦合,不推荐使用
- skywalking 链路追踪工具,也可用作基础监控
三、skywalking
一个分布式系统的应用程序性能监控工具(Application Performance Management),提供了完善的链路追踪能力,Apache的顶级项目(前华为产品经理吴晟主导开源)。
3.1 几个概念
- 服务(service):业务资源应用系统(微服务)
- 端点(endpoint):应用系统对外暴露的功能接口
- 实例(instance):物理机
3.2 使用skywalking做监控和链路追踪
- skywalking主要可以监控接口、服务、物理实例的一些状态,特别是在压测的时候可以看到众多服务中哪些服务和接口比较慢,我们可以针对性的分析和优化。
- 我们还在skywalking设置了告警规则,特别是在项目上线之后,如果报错,我们分别设置了可以给相关负责人发短信和邮件,第一时间知道项目的bug情况,第一时间修复。