内容摘录
<p align="center">
<a href="https://hertzbeat.apache.org">
<img alt="hertzbeat" src="/home/static/img/hertzbeat-brand.svg" width="260">
</a>
</p>
<p align="center">
<b>Readme</b>:
<b><a href="README.md">English</a></b> | <a href="README_CN.md">中文</a> | <a href="README_JP.md">日本語</a>
</p>
Discord
Reddit
Twitter
OpenSSF Best Practices
codecov
Docker Pulls
Artifact Hub
YouTube Channel Subscribers
Contribute with Gitpod
Ask DeepWiki
zread
**Home: hertzbeat.apache.org**
**Email: <a href="mailto:dev-subscribe@hertzbeat.apache.org">Mail to dev-subscribe@hertzbeat.apache.org</a> to subscribe mailing lists**
🎡 <font color="green">Introduction</font>
Apache HertzBeat™ is an AI-powered next-generation open source real-time observability system. Unified metrics and logs collection, centralized alerting distribution, intelligent management and analysis. No Agent required, high performance cluster, provides powerful custom monitoring and status page building capabilities.
Features
Integrates **collection + analysis + alerting + notification** into one platform, with new AI-powered interactions and features under HertzBeat AI, and built-in MCP Server capabilities.
Unified metrics platform, agentless, Prometheus-compatible, supports application services, programs, databases, caches, operating systems, big data, middleware, web servers, cloud-native, networks, custom monitoring and more.
Unified logging platform, seamlessly integrates multiple log sources through OTLP protocol for reporting.
Unified alerting platform, integrates internal alerts with various external alert sources, unified alert processing and analysis, flexible real-time and periodic threshold rules, grouping convergence, silence, suppression, etc.
Unified message distribution, alerts processed by the alerting platform are distributed via Email Discord Slack Telegram DingTalk WeChat FeiShu SMS Webhook ServerChan and other methods.
Makes protocols such as Http, Jmx, Ssh, Snmp, Jdbc, Prometheus configurable, allowing you to collect any metrics by simply configuring the template YML file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat.
High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.
Provides powerful status page building capabilities, easily communicate the real-time status of your service to users.
HertzBeat's unified platform, AI intelligence, powerful customization, multi-type support, high performance, and easy expansion, aims to help users quickly and conveniently achieve observability requirements.
----
----
🥐 Architecture
!hertzBeat
⛄ Supported
We define all metrics collection types such as mysql, jvm, and k8s as YML templates, allowing users to import them to support corresponding types of monitoring.
Welcome everyone to contribute your customized general metrics type YML template during use.
Website, Port Telnet,
Http Api, Ping Connect,
Jvm, SiteMap,
Ssl Certificate, SpringBoot2,
FTP Server, SpringBoot3,
Udp Port, Dns,
Pop3, Ntp,
Api Code, Smtp,
Nginx
Mysql, PostgreSQL,
MariaDB, Redis,
ElasticSearch, SqlServer,
Oracle, MongoDB,
DM, OpenGauss,
ClickHouse, IoTDB,
Redis Cluster, Redis Sentinel
Doris BE, Doris FE,
Memcached, NebulaGraph
Linux, Ubuntu,
CentOS, Windows,
EulerOS, Fedora CoreOS,
OpenSUSE, Rocky Linux,
Red Hat, FreeBSD,
AlmaLinux, Debian Linux
Tomcat, Nacos,
Zookeeper, RabbitMQ,
Flink, Kafka,
ShenYu, DynamicTp,
Jetty, ActiveMQ,
Spring Gateway, EMQX MQTT,
AirFlow, Hive,
Spark, Hadoop
Kubernetes, Docker
CiscoSwitch, HpeSwitch,
HuaweiSwitch, TpLinkSwitch,
H3cSwitch
And More Your Custom Template.
Notified Support Discord Slack Telegram Email Dingtalk WeChat FeiShu Webhook SMS ServerChan.
🐕 Quick Start
If you wish to deploy HertzBeat locally, please refer to the following Deployment Documentation for instructions.
🍞 Install HertzBeat
HertzBeat supports installation through source code, docker or package, cpu support x86/arm64.
1:Install quickly via docker
Just one command to get started
Access http://localhost:1157 to start, default account: admin/hertzbeat
Deploy collector clusters (Optional)
-e IDENTITY=custom-collector-name : set the collector unique identity name.
-e MODE=public : set the running mode(public or private), public cluster or private cloud-edge.
-e MANAGER_HOST=127.0.0.1 : set the main hertzbeat server ip.
-e MANAGER_PORT=1158 : set the main hertzbeat server port, default 1158.
Detailed config refer to Install HertzBeat via Docker
2:Install via package
Download the release package hertzbeat-xx.tar.gz Download
Configure the HertzBeat configuration yml file hertzbeat/config/application.yml (optional)
Run command $ ./bin/startup.sh or bin/startup.bat
Access http://localhost:1157 to start, default account: admin/hertzbeat
Deploy collector clusters (Optional)
Download the release package hertzbeat-collector-xx.tar.gz to new machine Download
Configure the collector configuration yml file hertzbeat-collector/config/application.yml: unique identity name, running mode (public or private), hertzbeat manager-host, hertzbeat manager-port
Run command $ ./bin/startup.sh or bin/startup.bat
Access http://localhost:1157 and you will see the registered new collector in dashboard
Detailed config refer to Install HertzBeat via Package
3:Start via source code
Local source code debugging needs to start the back-end project hertzbeat-startup and the front-end project web-app.
Backend:need maven3+, java17, lombok, add VM options in IDE: --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED , then start the hertzbeat-startup service.
Web:need nodejs npm angular-cli environment, Run ng serve --open in web-app directory after backend startup.
Access http://localhost:4200 to start, default account: admin/hertzbeat
Detailed steps refer to CONTRIBUTING
4:Install All(hertzbeat+postgres…