hertzbeat

[comment]: <> (sureness) ## HertzBeat | [中文文档](README_CN.md) > An open-source, real-time monitoring system with custom monitoring, high performance cluster and agentless capabilities. | 易用友好的开源实时监控告警系统,无需Agent,高性能集群,强大自定义监控能力. [![discord](https://img.shields.io/badge/chat-on%20discord-brightgreen)](https://discord.gg/Fb6M73htGr) [![Gitter](https://badges.gitter.im/hertzbeat/community.svg)](https://gitter.im/hertzbeat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) [![QQ](https://img.shields.io/badge/qq-236915833-orange)](https://jq.qq.com/?_wv=1027&k=aVIVB2K9) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/web-monitor.svg) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/ping-connect.svg) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/port-available.svg) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/database-monitor.svg) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/os-monitor.svg) ![hertzbeat](https://img.shields.io/badge/monitor-cloud%20native-brightgreen) ![hertzbeat](https://img.shields.io/badge/monitor-middleware-blueviolet) ![hertzbeat](https://img.shields.io/badge/monitor-network-red) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/custom-monitor.svg) ![hertzbeat](https://cdn.jsdelivr.net/gh/dromara/hertzbeat@gh-pages/img/badge/alert.svg) **Home: [hertzbeat.dromara.org](https://hertzbeat.dromara.org) | [hertzbeat.com](https://hertzbeat.com)** **Cloud: [tancloud.cn](https://tancloud.cn)** ## 🎡 Introduction [HertzBeat](https://github.com/dromara/hertzbeat) is an open source, real-time monitoring system with custom monitoring, high performance cluster and agentless capabilities. ### Features * Combines **monitoring, alarm, and notification** features into one platform, and supports monitoring for web service, database, os, middleware, cloud-native, network and more. * Easy to use and agentless, offering full web-based operations for monitoring and alerting with just a click of a mouse, all at zero learning cost. * Makes protocols such as `Http, Jmx, Ssh, Snmp, Jdbc` 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 flexible alarm threshold rules and timely notifications delivered via `Discord` `Slack` `Telegram` `Email` `Dingtalk` `WeChat` `FeiShu` `Webhook` `SMS` `ServerChan`. > HertzBeat's powerful customization, multi-type support, high performance, easy expansion, and low coupling, aims to help developers and teams quickly build their own monitoring system. > We also provide **[SaaS Monitoring Cloud](https://console.tancloud.cn)**, users no longer need to deploy a cumbersome monitoring system to monitor their resources. **[Get started online for free](https://console.tancloud.cn)**. ---- [![hertzbeat](home/static/img/home/1.png)](https://www.bilibili.com/video/BV1LY4y1m7rH/) [![hertzbeat](home/static/img/home/9.png)](https://www.bilibili.com/video/BV1LY4y1m7rH/) ---- ## 🥐 Architecture ![hertzBeat](home/static/img/docs/hertzbeat-arch.png) ## ⛄ Supported > We define all monitoring collection types such as `mysql`, `jvm`, and `k8s` as `YML` 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](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-website.yml), [Port Telnet](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-port.yml), [Http Api](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-api.yml), [Ping Connect](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-ping.yml), [Jvm](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-jvm.yml), [SiteMap](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-fullsite.yml), [Ssl Certificate](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-ssl_cert.yml), [SpringBoot2](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-springboot2.yml), [FTP Server](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-ftp.yml), [SpringBoot3](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-springboot3.yml) - [Mysql](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-mysql.yml), [PostgreSQL](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-postgresql.yml), [MariaDB](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-mariadb.yml), [Redis](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-redis.yml), [ElasticSearch](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-elasticsearch.yml), [SqlServer](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-sqlserver.yml), [Oracle](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-oracle.yml), [MongoDB](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-mongodb.yml), [DM](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-dm.yml), [OpenGauss](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-opengauss.yml), [ClickHouse](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-clickhouse.yml), [IoTDB](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-iotdb.yml), [Redis Cluster](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-redis_cluster.yml), [Redis Sentinel](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-redis_sentinel.yml) [Doris BE](https://github.com/dromara/hertzbeat/blob/master/manager/src/main/resources/define/app-doris_be.yml), [Doris FE](https://github.com/dromara/hertzbeat/blob/master/manager/src/main/resources/define/app-doris_fe.yml) - [Linux](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-linux.yml), [Ubuntu](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-ubuntu.yml), [CentOS](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-centos.yml), [Windows](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-windows.yml), [EulerOS](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-euleros.yml), [Fedora CoreOS](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-coreos.yml), [OpenSUSE](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-opensuse.yml), [Rocky Linux](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-rockylinux.yml), [Red Hat](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-redhat.yml), [FreeBSD](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-freebsd.yml), [AlmaLinux](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-almalinux.yml), [Debian Linux](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-debian.yml) - [Tomcat](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-tomcat.yml), [Nacos](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-nacos.yml), [Zookeeper](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-zookeeper.yml), [RabbitMQ](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-rabbitmq.yml), [Flink](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-flink.yml), [Kafka](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-kafka.yml), [ShenYu](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-shenyu.yml), [DynamicTp](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-dynamic_tp.yml), [Jetty](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-jetty.yml), [ActiveMQ](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-activemq.yml) - [Kubernetes](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-kubernetes.yml), [Docker](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-docker.yml) - [CiscoSwitch](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-cisco_switch.yml), [HpeSwitch](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-hpe_switch.yml), [HuaweiSwitch](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-huawei_switch.yml), [TpLinkSwitch](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-tplink_switch.yml), [H3cSwitch](https://raw.githubusercontent.com/dromara/hertzbeat/master/manager/src/main/resources/define/app-h3c_switch.yml) - And More Your Custom Template. - Notified Support `Discord` `Slack` `Telegram` `Email` `Dingtalk` `WeChat` `FeiShu` `Webhook` `SMS` `ServerChan`. ## 🐕 Quick Start - If you prefer to use HertzBeat directly without deploying it, we provide SAAS Monitoring Cloud-TanCloud, **[Log In For Free](https://console.tancloud.cn)**. - 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 1. Just one command to get started: ```docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat``` ```or use quay.io (if dockerhub network connect timeout)``` ```docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat``` 2. Access `http://localhost:1157` to start, default account: `admin/hertzbeat` 3. Deploy collector clusters ``` docker run -d -e IDENTITY=custom-collector-name -e MANAGER_IP=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector tancloud/hertzbeat-collector ``` - `-e IDENTITY=custom-collector-name` : set the collector unique identity name. - `-e MANAGER_IP=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](https://hertzbeat.com/docs/start/docker-deploy) ##### 2:Install via package 1. Download the release package `hertzbeat-xx.zip` [GITEE Release](https://gitee.com/dromara/hertzbeat/releases) [GITHUB Release](https://github.com/dromara/hertzbeat/releases) 2. Need `java jdk11` Environment 3. Configure the HertzBeat configuration yml file `hertzbeat/config/application.yml` (optional) 4. Run command `$ ./bin/startup.sh ` or `bin/startup.bat` 5. Access `http://localhost:1157` to start, default account: `admin/hertzbeat` 6. Deploy collector clusters - Download the release package `hertzbeat-collector-xx.zip` to new machine [GITEE Release](https://gitee.com/dromara/hertzbeat/releases) [GITHUB Release](https://github.com/dromara/hertzbeat/releases) - Need `java jdk11` Environment - Configure the collector configuration yml file `hertzbeat-collector/config/application.yml`: unique `identity` name, hertzbeat `manager-ip`, hertzbeat `manager-port` ```yaml collector: dispatch: entrance: netty: enabled: true identity: ${IDENTITY:} manager-ip: ${MANAGER_IP:127.0.0.1} manager-port: ${MANAGER_PORT:1158} ``` - 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](https://hertzbeat.com/docs/start/package-deploy) ##### 3:Start via source code 1. Local source code debugging needs to start the back-end project `manager` and the front-end project `web-app`. 2. Backend:need `maven3+`, `java11`, `lombok`, start the `manager` service. 3. Web:need `nodejs npm angular-cli` environment, Run `ng serve --open` in `web-app` directory after backend startup. 4. Access `http://localhost:4200` to start, default account: `admin/hertzbeat` Detailed steps refer to [CONTRIBUTING](CONTRIBUTING.md) ##### 4:Install All(hertzbeat+mysql+iotdb/tdengine) via Docker-compose Install and deploy the mysql database, iotdb/tdengine database and hertzbeat at one time through [docker-compose deployment script](script/docker-compose). Detailed steps refer to [Install via Docker-Compose](script/docker-compose/README.md) **HAVE FUN** ## 🥐 Roadmap ![hertzBeat](home/static/img/docs/hertzbeat-roadmap.png) ## ✨ Contributors Thanks to these wonderful people, welcome to join us: [Contributor Guide](CONTRIBUTING.md)
tomsun28
tomsun28

💻 📖 🎨
会编程的王学长
会编程的王学长

💻 📖 🎨
MaxKey
MaxKey

💻 🎨 🤔
观沧海
观沧海

💻 🎨 🐛
yuye
yuye

💻 📖
jx10086
jx10086

💻 🐛
winnerTimer
winnerTimer

💻 🐛
goo-kits
goo-kits

💻 🐛
brave4Time
brave4Time

💻 🐛
WalkerLee
WalkerLee

💻 🐛
jianghang
jianghang

💻 🐛
ChineseTony
ChineseTony

💻 🐛
wyt199905
wyt199905

💻
卫傅庆
卫傅庆

💻 🐛
zklmcookle
zklmcookle

💻
DevilX5
DevilX5

📖 💻
tea
tea

💻
yangshihui
yangshihui

💻 🐛
DreamGirl524
DreamGirl524

💻 📖
gzwlly
gzwlly

📖
cuipiheqiuqiu
cuipiheqiuqiu

💻 ⚠️ 🎨
lambert
lambert

💻
mroldx
mroldx

📖
woshiniusange
woshiniusange

📖
VampireAchao
VampireAchao

💻
zcx
zcx

💻 🐛 🎨
CharlieXCL
CharlieXCL

📖
Privauto
Privauto

💻 📖
emrys
emrys

📖
SxLiuYu
SxLiuYu

🐛
All Contributors
All Contributors

📖
铁甲小宝
铁甲小宝

💻 📖
click33
click33

📖
蒋小小
蒋小小

📖
Kevin Huang
Kevin Huang

📖
铁甲小宝
铁甲小宝

🐛 💻 📖
Captain Jack
Captain Jack

📖
haibo.duan
haibo.duan

⚠️ 💻
assassin
assassin

🐛 💻
Reverse wind
Reverse wind

⚠️ 💻
luxx
luxx

💻
Ikko Ashimine
Ikko Ashimine

📖
leizenan
leizenan

💻
BKing
BKing

📖
xingshuaiLi
xingshuaiLi

📖
wangke6666
wangke6666

📖
刺猬
刺猬

🐛 💻
Haste
Haste

💻
zhongshi.yi
zhongshi.yi

📖
Qi Zhang
Qi Zhang

📖
MrAndyMing
MrAndyMing

📖
idongliming
idongliming

💻
Zichao Lin
Zichao Lin

💻 📖
liudonghua
liudonghua

💻 🤔
Jerry
Jerry

💻 ⚠️ 🤔
yanhom
yanhom

📖
fsl
fsl

💻
xttttv
xttttv

📖
NavinKumarBarnwal
NavinKumarBarnwal

💻
Zakkary
Zakkary

📖
sunxinbo
sunxinbo

💻 ⚠️
ldzbook
ldzbook

📖 🐛
余与雨
余与雨

💻 ⚠️
MysticalDream
MysticalDream

💻 ⚠️
zhouyoulin12
zhouyoulin12

💻 ⚠️
jerjjj
jerjjj

💻
wjl110
wjl110

💻
Sean
Sean

📖
chenyiqin
chenyiqin

💻 ⚠️
hudongdong129
hudongdong129

💻 ⚠️ 📖
TherChenYang
TherChenYang

💻 ⚠️
HattoriHenzo
HattoriHenzo

💻 ⚠️
ycilry
ycilry

📖
aoshiguchen
aoshiguchen

📖 💻
蔡本祥
蔡本祥

💻
浮游
浮游

💻
Grass-Life
Grass-Life

💻
xiaohe428
xiaohe428

💻 📖
TableRow
TableRow

📖 💻
ByteIDance
ByteIDance

💻
Jangfe
Jangfe

💻
zqr10159
zqr10159

📖 💻
vinci
vinci

💻
js110
js110

💻
CrazyLionLi
CrazyLionLi

📖
banmajio
banmajio

💻
topsuder
topsuder

💻
richar2022
richar2022

💻
fcb-xiaobo
fcb-xiaobo

💻
wenkyzhang
wenkyzhang

📖
ZangJuxy
ZangJuxy

📖
l646505418
l646505418

💻
Carpe-Wang
Carpe-Wang

💻
莫枢
莫枢

💻
huangcanda
huangcanda

💻
世纪末的架构师
世纪末的架构师

💻
ShuningWan
ShuningWan

📖
MrYZhou
MrYZhou

📖
suncqujsj
suncqujsj

📖
sunqinbo
sunqinbo

💻
haoww
haoww

📖
i-mayuan
i-mayuan

📖
fengruge
fengruge

📖
zhanghuan
zhanghuan

💻
shenymin
shenymin

💻
Dhruva Chandra
Dhruva Chandra

💻
miss_z
miss_z

📖
wyt990
wyt990

💻
licocon
licocon

💻
Mi Na
Mi Na

💻
Kylin-Guo
Kylin-Guo

📖
Mr灬Dong先生
Mr灬Dong先生

💻
Pratyay Banerjee
Pratyay Banerjee

📖 💻
yujianzhong520
yujianzhong520

💻
SPPan
SPPan

💻
ZhangJiashu
ZhangJiashu

💻
impress
impress

💻
凌晨一点半
凌晨一点半

📖
Eeshaan Sawant
Eeshaan Sawant

💻
nandofromthebando
nandofromthebando

💻
caiboking
caiboking

💻
baixing99
baixing99

💻
Yang Chuang
Yang Chuang

💻
wlin20
wlin20

💻
guojing1983
guojing1983

💻
moxi
moxi

📖
qq471754603
qq471754603

💻
渭雨
渭雨

💻
liuxuezhuo
liuxuezhuo

💻
lisongning
lisongning

💻
YutingNie
YutingNie

💻
Mike Zhou
Mike Zhou

💻
小笨蛋
小笨蛋

💻
littlezhongzer
littlezhongzer

💻
ChenXiangxxxxx
ChenXiangxxxxx

💻
Mr.zhou
Mr.zhou

💻
姚贤丰
姚贤丰

💻
## 💬 Join discussion HertzBeat is a top project under the [Dromara Open Source Community](https://dromara.org/). Gitee GVP. ##### Channel **WeChat Group** : Add friend `tan-cloud`, and will invite you to the group. [QQ Group](https://jq.qq.com/?_wv=1027&k=Bud9OzdI) : Add group num `236915833` [Gitter Channel](https://gitter.im/hertzbeat/community) [Github Discussion](https://github.com/dromara/hertzbeat/discussions) [User Club](https://support.qq.com/products/379369) ##### Public tan-cloud
planet ##### Friends - [Sa-Token](https://github.com/dromara/Sa-Token) : 一个轻量级 java 权限认证框架,让鉴权变得简单、优雅 - [DynamicTp](https://github.com/dromara/dynamic-tp) : 轻量级动态线程池,内置监控告警功能,集成三方中间件线程池管理,基于主流配置中心 - [Hippo4j](https://github.com/opengoofy/hippo4j/) : 强大的动态线程池框架,附带监控报警功能 - [Jpom](https://gitee.com/dromara/Jpom) : 简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件 - [ArgusDBM](https://github.com/zmops/ArgusDBM) : 开源数据库一体化监控平台,致力于监控所有数据库 ##### Sponsor - Postcat [An Open Source API Tool](https://datayi.cn/w/xRxVBBko) supporting api test, mock, documentation, team collaboration etc. - Thanks [吉实信息(构建全新的微波+光交易网络)](https://www.flarespeed.com) sponsored server node. - Thanks [蓝易云(全新智慧上云)](https://www.tsyvps.com/aff/BZBEGYLX) sponsored server node. ## 🛡️ License [`Apache License, Version 2.0`](https://www.apache.org/licenses/LICENSE-2.0.html)