CAT 简介

  • CAT 是基于 Java 开发的实时应用监控平台,为美团点评提供了全面的实时监控告警服务。
  • CAT 作为服务端项目基础组件,提供了 Java、C/C++、Node.js、Python、Go 等多语言客户端,已经在美团点评的基础架构中间件框架(MVC 框架,RPC 框架,数据库框架,缓存框架等,消息队列,配置系统等)深度集成,为美团点评各业务线提供系统丰富的性能指标、健康状况、实时告警等。
  • CAT 很大的优势是它是一个实时系统,CAT 大部分系统是分钟级统计,但是从数据生成到服务端处理结束是秒级别,秒级定义是 48 分钟 40 秒,基本上看到 48 分钟 38 秒数据,整体报表的统计粒度是分钟级;第二个优势,监控数据是全量统计,客户端预计算;链路数据是采样计算。
  • 官方 Github url: https://github.com/dianping/cat

数据类型

数据传输协议

  • plaintext : 纯文本模式, Datakit 目前暂时不支持。
  • native : 以特定符号为分隔符的文本形式,目前 Datakit 已经支持。

数据分类

数据类型简写 类型 说明 当前版本的 Datakit 是否接入 对应到观测云中的数据类型
t transaction start 事务开始 TRUE trace
T transaction end 事务结束 TRUE trace
E event 事件 FALSE -
M metric 自定义指标 FALSE -
L trace 链路 FALSE -
H heartbeat 心跳包 TRUE 指标

图片

前置条件

  • 采集器:Datakit 安装
  • Demo 程序: java demo
  • 部署方式:主机部署

部署方式

登录观测云,点击 集成 -> Cat 集成

图片

也可参考 Cat 官方文档:https://github.com/dianping/cat/wiki/readme_server

采集器配置

进入 DataKit 安装目录下的 conf.d/cat 目录,复制 cat.conf.sample 并命名为 cat.conf 。示例如下:

同时可以通过 ConfigMap 方式注入采集器配置来开启采集器

[[inputs.cat]]
  ## tcp port
  tcp_port = "2280"

  ##native or plaintext, datakit only support native(NT1) !!!
  decode = "native"

  ## This is default cat-client Kvs configs.
  startTransactionTypes = "Cache.;Squirrel."
  MatchTransactionTypes = "SQL"
  block = "false"
  routers = "127.0.0.1:2280;"
  sample = "1.0"

  ## global tags.
  # [inputs.cat.tags]
    # key1 = "value1"
    # key2 = "value2"
    # ...

配置文件注意的地方:

  • startTransactionTypesMatchTransactionTypesblockrouterssample 是返回给 client 端的数据。
  • routers 是 Datakit 的 ip 或者域名。
  • tcp_port 对应的是 client 端配置 servers ip 地址。

初始化客户端

1、创建 /data/appdatas/cat 目录

确保你具有这个目录的读写权限。

2、创建 /data/applogs/cat 目录 (可选)

这个目录是用于存放运行时日志的,这将会对调试提供很大帮助,同样需要读写权限。

3、创建 /data/appdatas/cat/client.xml ,内容如下

<?xml version="1.0" encoding="utf-8"?>
<config mode="client">
    <servers>
        <!-- datakit ip, cat port , http port -->
        <server ip="10.200.6.16" port="2280" http-port="9529"/>
    </servers>
</config>

注意:配置中的 9529 端口是 Datakit 的 http 端口。2280 是 cat 采集器开通的 2280 端口。

效果展示

链路

登录观测云,点击 应用性能检测 -> 链路,查看链路详情。

图片

指标

登录观测云,点击 场景 -> 新建 Cat 监控视图

图片

图片