A real-time monitoring system with agentless, performance cluster, prometheus-compatible, custom monitoring and status page building capabilities.
Home: hertzbeat.apache.org
Email: Mail to [email protected]
to subscribe mailing lists
Apache HertzBeat (incubating) is an easy-to-use, open source, real-time monitoring system with agentless, high performance cluster, prometheus-compatible, offers powerful custom monitoring and status page building capabilities.
- Combines monitoring, alarm, and notification features into one platform, and supports monitoring for web service, program, database, cache, os, webserver, middleware, bigdata, cloud-native, network, custom and more.
- Easy to use and agentless, web-based and with one-click monitoring and alerting, zero learning curve.
- Makes protocols such as
Http, Jmx, Ssh, Snmp, Jdbc, Prometheus
configurable, allowing you to collect any metrics by simply configuring the templateYML
file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat. - Compatible with the
Prometheus
ecosystem and more, can monitoring whatPrometheus
can monitoring with few clicks on webui. - High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.
- Provides flexible alarm threshold rules and timely notifications delivered via
Discord
Slack
Telegram
Email
Dingtalk
WeChat
FeiShu
Webhook
SMS
ServerChan
. - Provides powerful status page building capabilities, easily communicate the real-time status of your service to users.
HertzBeat's powerful customization, multi-type support, high performance, easy expansion, and low coupling, aims to help users quickly build their own monitoring system.
We define all monitoring collection types such as
mysql
,jvm
, andk8s
asYML
monitoring templates, allowing users to import them to support corresponding types of monitoring. Welcome everyone to contribute your customized general monitoring 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
.
- If you wish to deploy HertzBeat locally, please refer to the following Deployment Documentation for instructions.
HertzBeat supports installation through source code, docker or package, cpu support x86/arm64.
- Just one command to get started:
docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat apache/hertzbeat
-
Access
http://localhost:1157
to start, default account:admin/hertzbeat
-
Deploy collector clusters (Optional)
docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector apache/hertzbeat-collector
-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
- Download the release package
hertzbeat-xx.tar.gz
GITHUB Release - Configure the HertzBeat configuration yml file
hertzbeat/config/application.yml
(optional) - Run command
$ ./bin/startup.sh
orbin/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 GITHUB Release - Configure the collector configuration yml file
hertzbeat-collector/config/application.yml
: uniqueidentity
name, runningmode
(public or private), hertzbeatmanager-host
, hertzbeatmanager-port
collector: dispatch: entrance: netty: enabled: true identity: ${IDENTITY:} mode: ${MODE:public} manager-host: ${MANAGER_HOST:127.0.0.1} manager-port: ${MANAGER_PORT:1158}
- Run command
$ ./bin/startup.sh
orbin/startup.bat
- Access
http://localhost:1157
and you will see the registered new collector in dashboard
- Download the release package
Detailed config refer to Install HertzBeat via Package
- Local source code debugging needs to start the back-end project
manager
and the front-end projectweb-app
. - Backend:need
maven3+
,java17
,lombok
, start themanager
service. - Web:need
nodejs npm angular-cli
environment, Runng serve --open
inweb-app
directory after backend startup. - Access
http://localhost:4200
to start, default account:admin/hertzbeat
Detailed steps refer to CONTRIBUTING
Install the postgresql/mysql database, victoria-metrics/iotdb/tdengine database and hertzbeat at one time through docker-compose deployment script.
Detailed steps refer to Install via Docker-Compose
Install HertzBeat cluster in a Kubernetes cluster by Helm chart.
Detailed steps refer to Artifact Hub
HAVE FUN
Thanks to these wonderful people, welcome to join us:
Contributor Guide
Join the Mailing Lists : Mail to [email protected]
to subscribe mailing lists.
WeChat Group : Add friend tan-cloud
and invite to the group.
WeChat Public : Search ID usthecom
.
QQ Group : Group num 630061200
HertzBeat is built on so many great open source projects, thanks to them!
Java Spring SpringBoot Jpa Maven Assembly Netty Lombok Sureness Protobuf HttpClient Guava SnakeYaml JsonPath ...
TypeScript Angular NG-ZORRO NG-ALAIN NodeJs Npm Html Less Echarts Rxjs ZoneJs MonacoEditor SlickCarousel Docusaurus ...
HertzBeat has been included in the
CNCF Observability And Analysis - Monitoring Landscape.