cat README

The project's README from github.com/dianping/cat. As one markdown file: README.md.

CAT

GitHub stars GitHub forks Maven Central License Build

CAT 简介

Cat 产品价值

Cat 优势

由于仓库的git历史记录众多,对于不关注历史,只关注最新版本或者基于最新版本贡献的新用户,可以在第一次克隆代码时增加--depth=1参数以加快下载速度,如

git clone --depth=1 https://github.com/dianping/cat.git

更新日志

监控模型:

支持 Transaction、Event、Heartbeat、Metric 四种消息模型。 模型设计

模块简介

功能模块

  1. 根目录下 cat-client 模块以后不再维护,下个大版本更新计划移除。新版Java客户端参考:lib/java
  2. 管理端、服务端、告警服务均使用 cat-home 模块部署即可

其他模块

Quick Start

服务端

项目设计

Apache 2.0 License.

CAT 接入公司

Alt text

更多接入公司,欢迎在 https://github.com/dianping/cat/issues/753 登记

联系我们

我们需要知道你对Cat的一些看法以及建议:

Starred 趋势

Star History Chart

cat (dianping/cat)

apm
Searching Database…

18.9K ·GitHub
What is this?CAT is an open-source real-time application monitoring platform (APM) written in Java at Meituan-Dianping. It collects performance metrics, health status and alerts from your services and turns them into live reports.
Is this a server I deploy, or a library I embed in my code?Both: a server you deploy, plus clients you embed in your apps to report data. On the server side, cat-consumer builds the analytics reports, cat-alarm raises real-time alerts and cat-hadoop archives logview data to HDFS.
How do I get it running?Clone the repo with --depth=1 (the git history is huge), run the database scripts from the script folder, then build and deploy the cat-home module - it hosts the admin console, data server and alarm service all at once.
What can I instrument with it - which languages and stacks?Official clients cover Java, C/C++, Node.js, Python and Go. An integration module adds connectors for common middleware: MVC, RPC, database and cache frameworks, message queues and config systems.
Any gotchas before I adopt it?The cat-client module at the repo root is deprecated and will be removed in a future major version - use the new Java client in lib/java. Also treat the master-branch docs as authoritative; older third-party configs may not be compatible.
Is this only useful at Meituan-Dianping scale, or can a smaller team run it too?It was built as a foundational component of Meituan-Dianping's server infrastructure, so it targets production services at scale - but it is open source, other companies use it too, and they can register in the adopters list.
What kinds of data can it monitor?Four message models: Transaction, Event, Heartbeat and Metric - together they capture call flows, discrete events, runtime status and measured metrics.
How fast does data actually show up?Very fast: report granularity is minute-level, but the pipeline from data generation to finished server-side processing runs in seconds - the README notes you see data from a couple of seconds back essentially immediately.
Does it record every request or just a sample?Metrics are collected in full, with aggregation pre-computed on the client side; only the call-chain (trace) data is sampled to keep volume under control.
Will it hold up under heavy production traffic?That is the design goal: high throughput for massive data volumes, fault tolerance that keeps monitoring transparent to your business, and horizontal scaling across distributed, even cross-datacenter (cross-IDC) deployments.
Creator
dianping
Size
111.4 MB
Stars
18.9K
Age
13y
Commits · 90 Days