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)

Searching Database…

18.9K ·GitHub
Что это такое?CAT — это open-source платформа мониторинга приложений в реальном времени (APM), написанная на Java в Meituan-Dianping. Она собирает метрики производительности, состояние здоровья и оповещения от ваших сервисов и превращает их в отчёты в реальном времени.
Это сервер, который я разворачиваю, или библиотека, которую я встраиваю в свой код?И то, и другое: сервер, который вы разворачиваете, плюс клиенты, которые вы встраиваете в свои приложения для отправки данных. На стороне сервера cat-consumer строит аналитические отчёты, cat-alarm рассылает оповещения в реальном времени, а cat-hadoop архивирует данные logview в HDFS.
Как его запустить?Склонируйте репозиторий с флагом --depth=1 (история git очень большая), выполните скрипты для базы данных из папки script, затем соберите и разверните модуль cat-home — он сразу содержит и админ-консоль, и сервер данных, и сервис оповещений.
Что можно подключать к мониторингу — какие языки и стеки поддерживаются?Официальные клиенты есть для Java, C/C++, Node.js, Python и Go. Модуль интеграции добавляет коннекторы к распространённому middleware: фреймворкам MVC, RPC, базам данных и кэшам, очередям сообщений и системам конфигурации.
Есть ли подводные камни, о которых стоит знать заранее?Модуль cat-client в корне репозитория устарел и будет удалён в будущей мажорной версии — используйте новый Java-клиент из lib/java. Также за истину считайте документацию из ветки master; старые сторонние конфиги могут оказаться несовместимыми.
Это нужно только на масштабе Meituan-Dianping, или небольшая команда тоже сможет этим пользоваться?Он создавался как базовый компонент серверной инфраструктуры Meituan-Dianping, поэтому рассчитан на production-сервисы в большом масштабе — но это open source, его используют и другие компании, и они могут добавиться в список внедрений.
Какие типы данных он умеет мониторить?Четыре модели сообщений: Transaction, Event, Heartbeat и Metric — вместе они покрывают цепочки вызовов, отдельные события, состояние в рантайме и измеряемые метрики.
Как быстро данные становятся видны?Очень быстро: гранулярность отчётов — минутная, но путь от появления данных до полной обработки на сервере занимает секунды — в README сказано, что данные парусекундной давности видны практически сразу.
Он записывает каждый запрос или только выборку?Метрики собираются полностью, причём агрегация вычисляется заранее на клиенте; сэмплируется только трассировка цепочки вызовов, чтобы держать объём данных под контролем.
Выдержит ли он большую production-нагрузку?Это и есть цель проекта: высокая пропускная способность для огромных объёмов данных, отказоустойчивость, при которой мониторинг прозрачен для вашего бизнеса, и горизонтальное масштабирование на распределённых развёртываниях, в том числе между дата-центрами (cross-IDC).
Creator
dianping
Size
111.4 MB
Stars
18.9K
Age
13y
Commits · 90 Days