大纲
背景
CAT(Central Application Tracking),是基于 Java 开发的分布式实时监控系统。CAT在基础存储、高性能通信、大规模在线访问、服务治理、实时监控、容器化及集群智能调度等领域提供业界领先的、统一的解决方案。CAT 目前在美团的产品定位是应用层的统一监控组件,基本接入了美团所有核心应用,在中间件(RPC、数据库、缓存、MQ 等)框架中得到广泛应用,为各业务线提供系统的性能指标、健康状况、实时告警等。
部署
具体配置参照如下链接 。
报表简介
transaction报表
一段代码运行时间、次数,比如URL、Cache、SQL执行次数和响应时间
监控一段代码运行情况:运行次数、QPS、错误次数、失败率、响应时间统计(平均影响时间、Tp分位值)等等。
默认打点部分:
打点 | 来源组件 | 描述 |
---|---|---|
System | cat-client | 上报监控数据的打点信息 |
URL | 需要接入cat-filter | URL访问的打点信息 |
对应代码:
我想监控一段核心代码的执行的情况,能看到统计报表,怎么办?
Step1: 首先,确定监控对象 - 监控某个方法中核心逻辑的健康状况
Step2: 其次,确定监控指标,Transaction统计报表可以提供如下信息 - 每分钟调用次数 - 每分钟的平均响应时间 - 最慢响应时间 - 请求的时间分布
Step3: 然后,进行埋点(前提是已经集成cat-client)
public void shopService() {
service1();
service2();
service3();
}
public void shopService() {
service1();
service2();
Transaction transaction = Cat.newTransaction("ShopService", "Service3");
try {
service3();
transaction.setStatus(Transaction.SUCCESS);
} catch (Exception e