blob: 9ea369ad0acd6c2ca8bc933b742a5251ee7e0298 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>HertzBeat Blog</title>
<link>https://hertzbeat.apache.org/blog</link>
<description>HertzBeat Blog</description>
<lastBuildDate>Thu, 18 Jan 2024 00:00:00 GMT</lastBuildDate>
<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
<generator>https://github.com/jpmonette/feed</generator>
<language>en</language>
<copyright>Copyright © 2024 Apache HertzBeat.</copyright>
<item>
<title><![CDATA[HertzBeat v1.4.4 released now!]]></title>
<link>https://hertzbeat.apache.org/blog/2024/01/18/hertzbeat-v1.4.4</link>
<guid>https://hertzbeat.apache.org/blog/2024/01/18/hertzbeat-v1.4.4</guid>
<pubDate>Thu, 18 Jan 2024 00:00:00 GMT</pubDate>
<description><![CDATA[What is HertzBeat?]]></description>
<content:encoded><![CDATA[<h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom monitoring, high performance cluster, prometheus-compatible and agentless capabilities.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>Combines <strong>monitoring, alarm, and notification</strong> features into one platform, and supports monitoring for web service, program, database, cache, os, webserver, middleware, bigdata, cloud-native, network, custom and more.</li><li>Easy to use and agentless, web-based and with one-click monitoring and alerting, zero learning curve.</li><li>Makes protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, allowing you to collect any metrics by simply configuring the template <code>YML</code> file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat.</li><li>Compatible with the <code>Prometheus</code> ecosystem and more, can monitoring what <code>Prometheus</code> can monitoring with few clicks on webui.</li><li>High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.</li><li>Provides flexible alarm threshold rules and timely notifications delivered via <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>Dingtalk</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code> <code>ServerChan</code>.</li></ul><blockquote><p>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. </p></blockquote><p><img loading="lazy" alt="hertzBeat" src="/assets/images/hertzbeat-arch-758b3f08da56310b5f1fe1d1bfd99d82.png" width="2814" height="1772" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeats-144-version-release">HertzBeat's 1.4.4 Version Release!<a href="#hertzbeats-144-version-release" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>support snmp v3 monitoring protocol @TJxiaobao</li><li>support monitoring NebulaGraph metrics @ZY945</li><li>support monitoring pop3 metrics @a-little-fool</li><li>support monitoring memcached metrics @ZY945</li><li>support monitoring nginx metrics @a-little-fool</li><li>support monitoring hive metrics @a-little-fool</li><li>feature: support for dns monitoring by @Calvin979</li><li>monitoring the availability of websockets through handshake. by @ZY945</li><li>add ntp protocol and support ntp monitoring by @ZY945</li><li>add smtp protocol and support smtp monitoring by @ZY945</li><li>more feature, document and bugfix</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="install-quickly-via-docker">Install Quickly Via Docker<a href="#install-quickly-via-docker" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ol><li>Just one command to get started:</li></ol><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat</code></p><p><code>or use quay.io (if dockerhub network connect timeout)</code></p><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat</code></p><ol start="2"><li><p>Access <code>http://localhost:1157</code> to start, default account: <code>admin/hertzbeat</code></p></li><li><p>Deploy collector clusters</p></li></ol><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector tancloud/hertzbeat-collector</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><code>-e IDENTITY=custom-collector-name</code> : set the collector unique identity name.</li><li><code>-e MANAGER_HOST=127.0.0.1</code> : set the main hertzbeat server ip.</li><li><code>-e MANAGER_PORT=1158</code> : set the main hertzbeat server port, default 1158.</li></ul><p>Detailed config refer to <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Install HertzBeat via Docker</a></p><hr><h3 class="anchor anchorWithStickyNavbar_LWe7" id="whats-changed">What's Changed<a href="#whats-changed" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Welcome to explore more new version updates, thanks to the hard work of the community partners, love 💗!</p></blockquote><ul><li>bugfix metrics tags value store jpa data-storage error by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1403" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1403</a></li><li>add smtp protocol and support smtp monitoring by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1407" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1407</a></li><li>add ZY945 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1409" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1409</a></li><li>support new parse type 'log' in ssh collect protocol by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1410" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1410</a></li><li>add ntp protocol and support ntp monitoring by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1411" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1411</a></li><li>monitoring the availability of websockets through handshake. by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1413" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1413</a></li><li>[Task-1386]<!-- --> When adding tags in tag management, random colors are given by default. by @prolevel1 in <a href="https://github.com/dromara/hertzbeat/pull/1412" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1412</a></li><li>add prolevel1 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1415" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1415</a></li><li>#1397 feature: support for dns monitoring by @Calvin979 in <a href="https://github.com/dromara/hertzbeat/pull/1416" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1416</a></li><li>Support monitoring hive metrics by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1417" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1417</a></li><li>support legend pageable in history data charts by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1414" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1414</a></li><li>update component tip and help tip doc by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1418" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1418</a></li><li>feature: support monitoring nginx metrics and add a help doc by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1420" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1420</a></li><li>update parser to parse from prometheus txt metrics data by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1421" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1421</a></li><li>support monitoring memcached metrics and add a help doc by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1423" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1423</a></li><li>support all ssh connect key exchange by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1424" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1424</a></li><li>[doc]<!-- --> add code of conduct by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1425" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1425</a></li><li>update label structure store in victoria metrics, make it prometheus like by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1426" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1426</a></li><li>feature: support monitoring pop3 metrics and add help doc by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1427" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1427</a></li><li>Update sidebars.json by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1428" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1428</a></li><li>Add zh-cn help doc by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1429" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1429</a></li><li>update monitoring state un-manage to unmonitored, update pic by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1430" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1430</a></li><li>Add jpa to date type storage by @Clownsw in <a href="https://github.com/dromara/hertzbeat/pull/1431" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1431</a></li><li>bugfix ^o^ token error, protect metrics api auth by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1434" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1434</a></li><li>Add relevant documents for SMTP and NTP by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1437" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1437</a></li><li>bugfix threshold init error in mysql env by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1435" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1435</a></li><li>app-rabbitmq.yml support for international name aliases by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1439" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1439</a></li><li>fix(*): error create lru-cache-timeout-cleaner thread by @Clownsw in <a href="https://github.com/dromara/hertzbeat/pull/1438" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1438</a></li><li>app-rabbitmq.yml Modifying Error Fields. by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1440" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1440</a></li><li>support monitoring NebulaGraph metrics and add help doc by @ZY945 in <a href="https://github.com/dromara/hertzbeat/pull/1441" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1441</a></li><li>Fix Nginx Collect validateParams function NPE by @Clownsw in <a href="https://github.com/dromara/hertzbeat/pull/1442" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1442</a></li><li>feature: add metrics i18n for app-springboot3.yml by @liyin in <a href="https://github.com/dromara/hertzbeat/pull/1445" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1445</a></li><li>feat: add metrics i18n for app-docker.yml by @liyin in <a href="https://github.com/dromara/hertzbeat/pull/1446" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1446</a></li><li>update docker-compose script and fix version by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1447" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1447</a></li><li>bugfix java.lang.IllegalArgumentException: Illegal character in query… by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1443" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1443</a></li><li>bugfix delete monitor error after monitor canceled by @ZhangZixuan1994 in <a href="https://github.com/dromara/hertzbeat/pull/1451" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1451</a></li><li>add ZhangZixuan1994 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1454" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1454</a></li><li>remove sleep, probably busy-waiting by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1456" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1456</a></li><li>[doc]<!-- --> add new committer ZY945 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1453" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1453</a></li><li>Update app-zookeeper.yml by @hurenjie1 in <a href="https://github.com/dromara/hertzbeat/pull/1458" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1458</a></li><li>add hurenjie1 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1459" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1459</a></li><li>update dashboard ui, remove ssh custom SignatureFactories, update app name by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1460" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1460</a></li><li>[Task]<!-- --> Monitoring Template Yml Metrics I18n | 监控模版指标国际化任务认领 #1212 by @tslj1024 in <a href="https://github.com/dromara/hertzbeat/pull/1461" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1461</a></li><li>add tslj1024 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1462" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1462</a></li><li>Add alarm trigger time for alarm restore by @Calvin979 in <a href="https://github.com/dromara/hertzbeat/pull/1464" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1464</a></li><li>bugfix history range query not work when victoria-metrics store by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1463" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1463</a></li><li>bugfix springboot3 translation by @liyin in <a href="https://github.com/dromara/hertzbeat/pull/1467" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1467</a></li><li>bugfix telegram-notice can not input bot-token by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1465" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1465</a></li><li>feat: support hostname target by @ldysdu in <a href="https://github.com/dromara/hertzbeat/pull/1455" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1455</a></li><li>add ldysdu as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1471" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1471</a></li><li>[feature]<!-- --> support snmp v3 monitoring protocol by @TJxiaobao in <a href="https://github.com/dromara/hertzbeat/pull/1469" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1469</a></li><li>bugfix alarm trigger-times not work when alarm and recovered trigger cyclically by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1468" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1468</a></li><li>update switch monitoring metrics i18n by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1472" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1472</a></li><li>fixed: snmpv3 contextName bug by @TJxiaobao in <a href="https://github.com/dromara/hertzbeat/pull/1473" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1473</a></li><li>Fix npt of webhook notify by @Calvin979 in <a href="https://github.com/dromara/hertzbeat/pull/1474" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1474</a></li><li>[hertzbeat]<!-- --> release hertzbeat version v1.4.4 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1475" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1475</a></li><li>bugfix nginx collect http deadlock error by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1476" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1476</a></li><li>alarm calculate ignore metrics collect code - TIMEOUT by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1478" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1478</a></li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-contributors">New Contributors<a href="#new-contributors" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>@ZY945 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1407" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1407</a></li><li>@prolevel1 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1412" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1412</a></li><li>@ZhangZixuan1994 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1451" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1451</a></li><li>@hurenjie1 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1458" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1458</a></li><li>@tslj1024 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1461" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1461</a></li><li>@ldysdu made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1455" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1455</a></li></ul><p><strong>Full Changelog</strong>: <a href="https://github.com/dromara/hertzbeat/compare/v1.4.3...v1.4.4" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/compare/v1.4.3...v1.4.4</a></p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code> <code>ServerChan</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong> </p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="download-link"><strong>Download Link</strong><a href="#download-link" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><strong>hertzbeat server</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-1.4.4.zip" target="_blank" rel="noopener noreferrer">hertzbeat-1.4.4.zip</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-linux_amd64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-linux_amd64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-linux_arm64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-linux_arm64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-macos_arm64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-macos_arm64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-macos_amd64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-macos_amd64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-windows64_1.4.4.zip" target="_blank" rel="noopener noreferrer">hertzbeat-windows64_1.4.4.zip</a></li></ul><p><strong>hertzbeat collector</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-1.4.4.zip" target="_blank" rel="noopener noreferrer">hertzbeat-collector-1.4.4.zip</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-linux_amd64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-linux_amd64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-linux_arm64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-linux_arm64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-macos_arm64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-macos_arm64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-macos_amd64_1.4.4.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-macos_amd64_1.4.4.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/hertzbeat-collector-windows64_1.4.4.zip" target="_blank" rel="noopener noreferrer">hertzbeat-collector-windows64_1.4.4.zip</a></li></ul><p><strong>hertzbeat docker compose script</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.4/docker-compose.zip" target="_blank" rel="noopener noreferrer">docker-compose.zip</a></li></ul>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Welcome to HertzBeat Community Committer!]]></title>
<link>https://hertzbeat.apache.org/blog/2024/01/11/new-committer</link>
<guid>https://hertzbeat.apache.org/blog/2024/01/11/new-committer</guid>
<pubDate>Thu, 11 Jan 2024 00:00:00 GMT</pubDate>
<description><![CDATA[! hertzBeat]]></description>
<content:encoded><![CDATA[<p>! <a target="_blank" href="/assets/files/new-committer-f8ad9cf268df899234aaeaef8541e294.png">hertzBeat</a></p><blockquote><p>Welcome to Dromara HertzBeat's three new community committeers, let's learn more about their open source experience!</p></blockquote><h1>New Committer - vinci</h1><p><strong>Name: Wang Jianing</strong></p><p><strong>First year graduate student, School of Computer Science, Zhejiang University</strong></p><p><strong>Github ID: vinci-897</strong></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="getting-to-know-hertzbeat-for-the-first-time">Getting to know Hertzbeat for the first time<a href="#getting-to-know-hertzbeat-for-the-first-time" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>In March 2023, I noticed Hertzbeat's project, so I directly sent an email to Tom in the community to ask if I could join, and he replied very quickly. It just so happened that I was in my senior year of college when I had more time, so I decisively picked an issue to resolve and had my first pull request at Hertzbeat.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="start-submitting-pr">Start submitting PR<a href="#start-submitting-pr" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>In the following period, I spent some time reading Hertzbeat's code, and submitted a few PRs off and on until April, when I learned about the Summer of Open Source event, and it just so happened that Hertzbeat was participating as well, so I submitted my application information and was selected. My task is mainly responsible for the implementation of a push collector, in the process of writing the code, I got a lot of community mentor Zheng Chenxin and Tom to help, and finally was able to successfully complete the code, the whole process is still relatively smooth.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="open-source-contributions">Open source contributions<a href="#open-source-contributions" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Add push module to expose interface for users to push data.</li><li>Implement the collection of push data in the collector module.</li><li>Implement user-defined data display in the front-end.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="harvest">Harvest<a href="#harvest" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Exposed to a great open source community and improved my skills in related areas.</li></ul><p>Thanks to Tom and my ospp mentor, Zheng Chenxin, who gave me a lot of help and advice during my exposure to the open source community. Currently I am still in charge of some of the code development in the community, I hope Hertzbeat can be better and better in the future!</p><hr><h1>New Committer - SongXiao</h1><p><strong>Name: Zhou Shusheng</strong></p><p><strong>Junior student at Henan Normal University</strong></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="getting-to-know-hertzbeat-for-the-first-time-1">Getting to know Hertzbeat for the first time<a href="#getting-to-know-hertzbeat-for-the-first-time-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>In March this year, under the influence of Xiaobao's seniors, I had some concepts about open source projects and laid the foundation for learning open source projects later, but I didn't go further because I only learned some Java basics at that time.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="start-submitting-pr-1">Start submitting PR<a href="#start-submitting-pr-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>In July this year, after basically completing the study of Java framework development, with the encouragement of Xiaobao, I started to try to pull issues, and submitted my first PR on July 20, during this period, I also consulted with the author of Hertzbeat and Dongfeng for some related issues, thank you very much.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="open-source-contributions-1">Open source contributions<a href="#open-source-contributions-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Support for Spring Gateway, Apache Spark, Apache Hive and other services metrics collection</li><li>Customize nginx and pop3 protocols to collect metrics for Nginx and POP3 mailbox servers, and add corresponding help files.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="harvest-1">Harvest<a href="#harvest-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Exposed to better and more complex large-scale projects, improved programming and problem-solving skills.</li><li>Put the theoretical knowledge into practice, gained JUC, microservice related development experience, and valuable project experience.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="thanks-to-our-community-partners">Thanks to our community partners<a href="#thanks-to-our-community-partners" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Thanks to the author of HertzBeat, HertzBeat/Sms4j Committer Tiejia Xiaobao, Sms4j Committer Dongfeng, when I encountered problems that I could not solve, I often asked the three brothers to ask for advice, and they are always tired of patiently helping me solve the problem, there are really no words.</p><p>Thanks to the other partners in the community, I've gained a lot from communicating and discussing with them, and I've also felt the active open source atmosphere in the Dromara community.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="some-advice-for-newcomers">Some advice for newcomers<a href="#some-advice-for-newcomers" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>When you first get involved in an open source project, start with simple tasks. Gradually familiarize yourself with the code and process of the project, and gradually take on more complex tasks.</li><li>If you encounter problems that you can't solve by yourself, you can ask for help from the community.</li></ul><hr><h1>New Committer - Dongfeng</h1><p>**Name: Zhang Yang</p><p><strong>Freshman from Henan Normal University</strong></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="getting-to-know-hertzbeat-for-the-first-time-2">Getting to know hertzbeat for the first time<a href="#getting-to-know-hertzbeat-for-the-first-time-2" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>In June of this year, I started to learn more about the project, I was recommended by a friend to learn about the project, I have been exploring open source projects and communities, and I like the atmosphere of sharing, discussing and improving each other. At the same time, I also tried to implement some monitoring in my previous projects, so I am more interested in this project.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="start-submitting-pr-2">Start submitting PR<a href="#start-submitting-pr-2" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Since July this year, I found hertzbeat's issues and prs are very active, so I went through their issues and prs to find out how to implement monitoring for a certain protocol. Then I found out that there is a task about smtp protocol monitoring, so I discussed with the author on the issue, and then I finished my pr through documentation and code.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="open-source-contributions-2">Open source contributions<a href="#open-source-contributions-2" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Implementation of smtp, ntp, websocket availability monitoring.</li><li>Implement monitoring metrics for memcached and NebulaGraph.</li><li>Add documentation for the implemented monitoring.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="harvest-2">Harvest<a href="#harvest-2" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Gained monitoring-related development experience and added a valuable project experience.</li><li>Gained a deeper understanding of network protocols.</li><li>I gained a deeper understanding of network protocols. I gained a preliminary understanding of the contribution process of open source projects.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="thank-you-to-our-community-partners">Thank you to our community partners.<a href="#thank-you-to-our-community-partners" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Thanks to the authors of hertzbeat for the documentation and help. Thanks to my friends for providing me with the courage to try to enter the open source project to contribute. Thanks to other community members for their issues and prs, which accelerated my understanding of the project.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="a-bit-of-advice-for-newcomers">A bit of advice for newcomers<a href="#a-bit-of-advice-for-newcomers" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Issues and pr's are the knock on the door of the project you are getting to know, so be willing to discuss and express your opinion.</li><li>No matter how big or small your contribution is, be willing to try and keep improving yourself.</li></ul><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat HertzBeat</a> is an open source real-time monitoring and alerting system with powerful customizable monitoring capabilities, high performance clustering, Prometheus compatibility, and no Agent required.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>Integrate <strong>Monitoring+Alerting+Notification</strong> into one system, support monitoring thresholds and alerting notifications for application services, applications, databases, caches, operating systems, big data, middleware, web servers, cloud-native, networks, customization, etc. in one step.</li><li>Easy to use and friendly, no need for <code>Agent</code>, full <code>WEB</code> page operation, a little mouse click to monitor alarms, zero start-up learning costs.</li><li>Configurable <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> protocol specification, just configure the monitoring template <code>YML</code> in your browser to customize the metrics you want to collect using these protocols. Do you believe that you can instantly adapt to a new type of monitoring such as <code>K8s</code> or <code>Docker</code> just by configuring it?</li><li>Compatible with <code>Prometheus</code> system ecosystem and more, you can monitor what <code>Prometheus</code> can monitor with a single page action.</li><li>High-performance, supports horizontal scaling of multiple collector clusters, multi-isolated network monitoring, and cloud-side collaboration.</li><li>Free alarm threshold rules, <code>Email</code> <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Nail</code> <code>WeChat</code> <code>Flybook</code> <code>SMS</code> <code>Webhook</code> <code>Server sauce</code> and other methods of timely delivery of messages.</li></ul><blockquote><p><code>HertzBeat</code>s powerful customization, multi-type support, high performance, easy to extend, low coupling, hope to help developers and teams quickly build their own monitoring system.</p></blockquote><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><p>Welcome more partners to participate in HertzBeat's open source collaboration, no matter a typo or punctuation we are very welcome, we learn together to make progress, the goal is to do a world-class open source software.</p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.4.3 released, prometheus-compatible!]]></title>
<link>https://hertzbeat.apache.org/blog/2023/12/11/hertzbeat-v1.4.3</link>
<guid>https://hertzbeat.apache.org/blog/2023/12/11/hertzbeat-v1.4.3</guid>
<pubDate>Mon, 11 Dec 2023 00:00:00 GMT</pubDate>
<description><![CDATA[What is HertzBeat?]]></description>
<content:encoded><![CDATA[<h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom monitoring, high performance cluster, prometheus-compatible and agentless capabilities.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>Combines <strong>monitoring, alarm, and notification</strong> features into one platform, and supports monitoring for web service, program, database, cache, os, webserver, middleware, bigdata, cloud-native, network, custom and more.</li><li>Easy to use and agentless, web-based and with one-click monitoring and alerting, zero learning curve.</li><li>Makes protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, allowing you to collect any metrics by simply configuring the template <code>YML</code> file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat.</li><li>Compatible with the <code>Prometheus</code> ecosystem and more, can monitoring what <code>Prometheus</code> can monitoring with few clicks on webui.</li><li>High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.</li><li>Provides flexible alarm threshold rules and timely notifications delivered via <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>Dingtalk</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code> <code>ServerChan</code>.</li></ul><blockquote><p>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. </p></blockquote><p><img loading="lazy" alt="hertzBeat" src="/assets/images/hertzbeat-arch-758b3f08da56310b5f1fe1d1bfd99d82.png" width="2814" height="1772" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeats-143-version-release">HertzBeat's 1.4.3 Version Release!<a href="#hertzbeats-143-version-release" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>enhanced reporting of external general alert API</li><li>support mysql api port website mongodb jvm redis monitoring metrics name i18n</li><li>support auto collect metrics by prometheus task</li><li>support victoriametrics as metrics data storage</li><li>support monitoring spring gateway metrics</li><li>add more windows monitoring metrics</li><li>add e2e testing module, support by api-testing</li><li>more feature, document and bugfix</li></ul><p>Compatible with the Prometheus ecosystem, now we can monitor what Prometheus can monitoring with few clicks on webui.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="install-quickly-via-docker">Install Quickly Via Docker<a href="#install-quickly-via-docker" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ol><li>Just one command to get started:</li></ol><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat</code></p><p><code>or use quay.io (if dockerhub network connect timeout)</code></p><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat</code></p><ol start="2"><li><p>Access <code>http://localhost:1157</code> to start, default account: <code>admin/hertzbeat</code></p></li><li><p>Deploy collector clusters</p></li></ol><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector tancloud/hertzbeat-collector</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><code>-e IDENTITY=custom-collector-name</code> : set the collector unique identity name.</li><li><code>-e MANAGER_HOST=127.0.0.1</code> : set the main hertzbeat server ip.</li><li><code>-e MANAGER_PORT=1158</code> : set the main hertzbeat server port, default 1158.</li></ul><p>Detailed config refer to <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Install HertzBeat via Docker</a></p><hr><h3 class="anchor anchorWithStickyNavbar_LWe7" id="whats-changed">What's Changed<a href="#whats-changed" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Welcome to explore more new version updates, thanks to the hard work of the community partners, love 💗!</p></blockquote><ul><li>update package deploy doc by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1330" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1330</a></li><li>bugfix duplicate collect job when update monitor templates by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1332" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1332</a></li><li>bugfix number variable in freemarker template display error by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1334" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1334</a></li><li>[alerter]<!-- --> Enhanced reporting of external general alert API by @SurryChen in <a href="https://github.com/dromara/hertzbeat/pull/1326" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1326</a></li><li>[doc]<!-- --> update hertzbeat-mysql-tdengine readme by @jiashu1024 in <a href="https://github.com/dromara/hertzbeat/pull/1335" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1335</a></li><li>add jiashu1024 as a contributor for doc by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1336" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1336</a></li><li>app-mysql.yml: Adjust slow query translation by @1036664317 in <a href="https://github.com/dromara/hertzbeat/pull/1337" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1337</a></li><li>add 1036664317 as a contributor for doc by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1338" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1338</a></li><li>Bump com.google.guava:guava from 31.0.1-jre to 32.0.0-jre by @dependabot in <a href="https://github.com/dromara/hertzbeat/pull/1339" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1339</a></li><li>[feature]<!-- --> support auto collect metrics by prometheus task by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1342" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1342</a></li><li>[doc]<!-- --> add vinci as new committer by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1341" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1341</a></li><li>[feature]<!-- --> add tag word cloud in dashboard by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1345" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1345</a></li><li>support custom prometheus endpoint path by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1346" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1346</a></li><li>bugfix tdengine query interval history metrics data with instance error by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1348" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1348</a></li><li>unlimit Alert.java content field length by @xiaoguolong in <a href="https://github.com/dromara/hertzbeat/pull/1351" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1351</a></li><li>add xiaoguolong as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1353" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1353</a></li><li>update monitor detail table ui layout by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1352" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1352</a></li><li>[doc]<!-- -->add star history by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1356" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1356</a></li><li>feature: app-mongodb.yml by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1359" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1359</a></li><li>alarm threshold support prometheus task metrics by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1354" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1354</a></li><li>support victoriametrics as metrics data storage by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1361" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1361</a></li><li>Add time type to support query_time of mysql and mariadb by @Clownsw in <a href="https://github.com/dromara/hertzbeat/pull/1364" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1364</a></li><li>add Clownsw as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1365" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1365</a></li><li>Error occured when I followed running steps to start Front-web by @Calvin979 in <a href="https://github.com/dromara/hertzbeat/pull/1366" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1366</a></li><li>add Calvin979 as a contributor for doc by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1367" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1367</a></li><li>enriches the cncf landscape by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1368" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1368</a></li><li>Fix flaky test in CollectUtilTest by @bbelide2 in <a href="https://github.com/dromara/hertzbeat/pull/1371" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1371</a></li><li>add bbelide2 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1372" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1372</a></li><li>Fix flaky test replaceSmilingPlaceholder by @bbelide2 in <a href="https://github.com/dromara/hertzbeat/pull/1373" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1373</a></li><li>add docker-compose script hertzbeat+mysql+victoria-metrics all in one by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1370" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1370</a></li><li>Feature: app-jvm.yml support for international name aliases by @Calvin979 in <a href="https://github.com/dromara/hertzbeat/pull/1376" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1376</a></li><li>add Calvin979 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1377" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1377</a></li><li>feature: support monitoring spring gateway metrics by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1374" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1374</a></li><li>update code comment and doc, bugfix concurrent exception by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1378" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1378</a></li><li>update windows define and accept snmp leaf by @jinyaoMa in <a href="https://github.com/dromara/hertzbeat/pull/1379" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1379</a></li><li>add jinyaoMa as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1380" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1380</a></li><li>fix exception when sending email has special chars by @Carpe-Wang in <a href="https://github.com/dromara/hertzbeat/pull/1383" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1383</a></li><li>test: add e2e testing for some basic APIs by @LinuxSuRen in <a href="https://github.com/dromara/hertzbeat/pull/1387" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1387</a></li><li>add LinuxSuRen as a contributor for code, and test by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1389" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1389</a></li><li>bugfix auto generate monitor name error when add monitor by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1384" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1384</a></li><li>bugfix CalculateAlarm execAlertExpression NPE by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1388" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1388</a></li><li>Feature: app-redis.yml support for international name aliases by @Calvin979 in <a href="https://github.com/dromara/hertzbeat/pull/1390" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1390</a></li><li>test: add more monitor related e2e testing case by @LinuxSuRen in <a href="https://github.com/dromara/hertzbeat/pull/1391" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1391</a></li><li>chore: update the pr template about the e2e testing by @LinuxSuRen in <a href="https://github.com/dromara/hertzbeat/pull/1392" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1392</a></li><li>add help header ui when update or add monitors by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1399" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1399</a></li><li>[hertzbeat]<!-- --> release hertzbeat version v1.4.3 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1400" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1400</a></li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-contributors">New Contributors<a href="#new-contributors" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>@1036664317 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1337" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1337</a></li><li>@dependabot made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1339" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1339</a></li><li>@xiaoguolong made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1351" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1351</a></li><li>@Clownsw made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1364" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1364</a></li><li>@Calvin979 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1366" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1366</a></li><li>@bbelide2 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1371" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1371</a></li><li>@jinyaoMa made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1379" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1379</a></li><li>@LinuxSuRen made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1387" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1387</a></li></ul><p><strong>Full Changelog</strong>: <a href="https://github.com/dromara/hertzbeat/compare/v1.4.2...v1.4.3" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/compare/v1.4.2...v1.4.3</a></p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code> <code>ServerChan</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong> </p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="download-link"><strong>Download Link</strong><a href="#download-link" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><strong>hertzbeat server</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-1.4.3.zip" target="_blank" rel="noopener noreferrer">hertzbeat-1.4.3.zip</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-linux_amd64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-linux_amd64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-linux_arm64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-linux_arm64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-macos_arm64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-macos_arm64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-macos_amd64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-macos_amd64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-windows64_1.4.3.zip" target="_blank" rel="noopener noreferrer">hertzbeat-windows64_1.4.3.zip</a></li></ul><p><strong>hertzbeat collector</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-1.4.3.zip" target="_blank" rel="noopener noreferrer">hertzbeat-collector-1.4.3.zip</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-linux_amd64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-linux_amd64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-linux_arm64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-linux_arm64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-macos_arm64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-macos_arm64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-macos_amd64_1.4.3.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-macos_amd64_1.4.3.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.3/hertzbeat-collector-windows64_1.4.3.zip" target="_blank" rel="noopener noreferrer">hertzbeat-collector-windows64_1.4.3.zip</a></li></ul>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.4.2 released, custom notice template!]]></title>
<link>https://hertzbeat.apache.org/blog/2023/11/12/hertzbeat-v1.4.2</link>
<guid>https://hertzbeat.apache.org/blog/2023/11/12/hertzbeat-v1.4.2</guid>
<pubDate>Sun, 12 Nov 2023 00:00:00 GMT</pubDate>
<description><![CDATA[What is HertzBeat?]]></description>
<content:encoded><![CDATA[<h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom monitoring, high performance cluster and agentless capabilities.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>Combines <strong>monitoring, alarm, and notification</strong> features into one platform, and supports monitoring for web service, program, database, cache, os, webserver, middleware, bigdata, cloud-native, network, custom and more.</li><li>Easy to use and agentless, offering full web-based operations for monitoring and alerting with just a few clicks, all at zero learning cost.</li><li>Makes protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, allowing you to collect any metrics by simply configuring the template <code>YML</code> file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat.</li><li>High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.</li><li>Provides flexible alarm threshold rules and timely notifications delivered via <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</li></ul><blockquote><p>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. </p></blockquote><p><img loading="lazy" alt="hertzBeat" src="/assets/images/hertzbeat-arch-758b3f08da56310b5f1fe1d1bfd99d82.png" width="2814" height="1772" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeats-142-version-release">HertzBeat's 1.4.2 version release!<a href="#hertzbeats-142-version-release" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>support custom notice template</li><li>support push metrics monitoring(beta)</li><li>support using Huawei Cloud OBS to store monitoring templates yml</li><li>support emqx monitoring and udp port monitoring</li><li>more features , fix multiple bugs and so on</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="install-quickly-via-docker">Install quickly via docker<a href="#install-quickly-via-docker" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ol><li>Just one command to get started:</li></ol><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat</code></p><p><code>or use quay.io (if dockerhub network connect timeout)</code></p><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat</code></p><ol start="2"><li><p>Access <code>http://localhost:1157</code> to start, default account: <code>admin/hertzbeat</code></p></li><li><p>Deploy collector clusters</p></li></ol><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector tancloud/hertzbeat-collector</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><code>-e IDENTITY=custom-collector-name</code> : set the collector unique identity name.</li><li><code>-e MANAGER_HOST=127.0.0.1</code> : set the main hertzbeat server ip.</li><li><code>-e MANAGER_PORT=1158</code> : set the main hertzbeat server port, default 1158.</li></ul><p>Detailed config refer to <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Install HertzBeat via Docker</a></p><hr><h3 class="anchor anchorWithStickyNavbar_LWe7" id="whats-changed">What's Changed<a href="#whats-changed" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Welcome to explore more new version updates, thanks to the hard work of the community partners, love 💗!</p></blockquote><ul><li>bugfix counting wrong tasks num of collector by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1265" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1265</a></li><li>[ospp]<!-- --> add push style collector by @vinci-897 in <a href="https://github.com/dromara/hertzbeat/pull/1222" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1222</a></li><li>add 1.4.1 version doc by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1263" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1263</a></li><li>support using Huawei Cloud OBS to store custom define yml file by @gcdd1993 in <a href="https://github.com/dromara/hertzbeat/pull/1266" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1266</a></li><li>[doc]<!-- --> add more contact channel by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1272" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1272</a></li><li>bugfix app-tomcat memory_pool unit mb by @rbsrcy in <a href="https://github.com/dromara/hertzbeat/pull/1268" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1268</a></li><li>add rbsrcy as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1271" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1271</a></li><li>[doc]<!-- --> update docker.md by @ruanliang-hualun in <a href="https://github.com/dromara/hertzbeat/pull/1270" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1270</a></li><li>add ruanliang-hualun as a contributor for doc by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1274" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1274</a></li><li>bugfix jmx memory_pool unit and time unit error by @rbsrcy in <a href="https://github.com/dromara/hertzbeat/pull/1273" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1273</a></li><li>bugfix old version monitor alert has no monitor name by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1278" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1278</a></li><li>support edit monitor in monitor detail page by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1282" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1282</a></li><li>reset alert converge reduce cache when restored alert trigger by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1281" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1281</a></li><li>[ospp]<!-- --> add push style collector doc by @vinci-897 in <a href="https://github.com/dromara/hertzbeat/pull/1267" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1267</a></li><li>bugfix threshold availability automatically carries threshold parameters by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1285" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1285</a></li><li>[ospp]<!-- --> support custom notice template by @Eden4701 in <a href="https://github.com/dromara/hertzbeat/pull/1233" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1233</a></li><li>add Eden4701 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1287" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1287</a></li><li>bugfix AvailableAlertDefineInit - query did not return a unique result by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1288" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1288</a></li><li>upgrade to version angular 15 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1291" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1291</a></li><li>support push style for multiple messages by @vinci-897 in <a href="https://github.com/dromara/hertzbeat/pull/1292" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1292</a></li><li>update hertzbeat upgrade help doc by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1294" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1294</a></li><li>feat alert converge, define, silence support search query by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1300" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1300</a></li><li>feature:support monitoring udp port availability by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1295" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1295</a></li><li>support emqx monitor by @vinci-897 in <a href="https://github.com/dromara/hertzbeat/pull/1302" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1302</a></li><li>add an explicit tag filter by @vinci-897 in <a href="https://github.com/dromara/hertzbeat/pull/1303" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1303</a></li><li>add hertzbeat icon by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1305" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1305</a></li><li>[doc]<!-- --> update kafka help doc by @XiaTian688 in <a href="https://github.com/dromara/hertzbeat/pull/1308" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1308</a></li><li>add XiaTian688 as a contributor for doc by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1309" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1309</a></li><li>support webhook custom template by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1306" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1306</a></li><li>set ssh param connect reused default false by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1310" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1310</a></li><li>upgrade greptimedb to v0.4 by @liyin in <a href="https://github.com/dromara/hertzbeat/pull/1311" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1311</a></li><li>add liyin as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1313" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1313</a></li><li>add some emqx monitoring metrics by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1312" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1312</a></li><li>feature: app-mysql.yml by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1316" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1316</a></li><li>modify default IoTDB version config to V_1_0 by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1315" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1315</a></li><li>bugfix timestamp is null by @qyaaaa in <a href="https://github.com/dromara/hertzbeat/pull/1246" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1246</a></li><li>[hertzbeat]<!-- --> release hertzbeat version v1.4.2 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1317" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1317</a></li><li>bugfix alarm time span match in silence and notice by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1318" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1318</a></li><li>update available alert threshold trigger times default 2 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1324" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1324</a></li><li>bugfix rabbitmq contains duplicated metric by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1322" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1322</a></li><li>[alerter]<!-- --> optimize the encoding of how to add Extern Alarm Manage API(#1320) by @SurryChen in <a href="https://github.com/dromara/hertzbeat/pull/1325" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1325</a></li><li>bugfix webhook post body error and alarm recover exception by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1327" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1327</a></li><li>build hertzbeat package with jdk runtime by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1328" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1328</a></li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-contributors">New Contributors<a href="#new-contributors" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>@rbsrcy made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1268" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1268</a></li><li>@XiaTian688 made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1308" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1308</a></li><li>@liyin made their first contribution in <a href="https://github.com/dromara/hertzbeat/pull/1311" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1311</a></li></ul><p><strong>Full Changelog</strong>: <a href="https://github.com/dromara/hertzbeat/compare/v1.4.1...v1.4.2" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/compare/v1.4.1...v1.4.2</a></p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code> <code>ServerChan</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong> </p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="download-link"><strong>Download Link</strong><a href="#download-link" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><strong>hertzbeat server</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-1.4.2.zip" target="_blank" rel="noopener noreferrer">hertzbeat-1.4.2.zip</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-linux_amd64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-linux_amd64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-linux_arm64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-linux_arm64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-macos_arm64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-macos_arm64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-macos_amd64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-macos_amd64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-windows64_1.4.2.zip" target="_blank" rel="noopener noreferrer">hertzbeat-windows64_1.4.2.zip</a></li></ul><p><strong>hertzbeat collector</strong></p><ul><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-1.4.2.zip" target="_blank" rel="noopener noreferrer">hertzbeat-collector-1.4.2.zip</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-linux_amd64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-linux_amd64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-linux_arm64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-linux_arm64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-macos_arm64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-macos_arm64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-macos_amd64_1.4.2.tar.gz" target="_blank" rel="noopener noreferrer">hertzbeat-collector-macos_amd64_1.4.2.tar.gz</a></li><li>⬇️ <a href="https://github.com/dromara/hertzbeat/releases/download/v1.4.2/hertzbeat-collector-windows64_1.4.2.zip" target="_blank" rel="noopener noreferrer">hertzbeat-collector-windows64_1.4.2.zip</a></li></ul>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.4.1 released, better experience!]]></title>
<link>https://hertzbeat.apache.org/blog/2023/09/26/hertzbeat-v1.4.1</link>
<guid>https://hertzbeat.apache.org/blog/2023/09/26/hertzbeat-v1.4.1</guid>
<pubDate>Tue, 26 Sep 2023 00:00:00 GMT</pubDate>
<description><![CDATA[hertzBeat]]></description>
<content:encoded><![CDATA[<p><img loading="lazy" alt="hertzBeat" src="/assets/images/0-e6b0a393f2a8e43af9bf271c436a823d.png" width="4064" height="2166" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom monitoring, high performance cluster and agentless capabilities.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>Combines <strong>monitoring, alarm, and notification</strong> features into one platform, and supports monitoring for web service, program, database, cache, os, webserver, middleware, bigdata, cloud-native, network, custom and more.</li><li>Easy to use and agentless, offering full web-based operations for monitoring and alerting with just a few clicks, all at zero learning cost.</li><li>Makes protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, allowing you to collect any metrics by simply configuring the template <code>YML</code> file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat.</li><li>High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.</li><li>Provides flexible alarm threshold rules and timely notifications delivered via <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</li></ul><blockquote><p>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. </p></blockquote><p><img loading="lazy" alt="hertzBeat" src="/assets/images/hertzbeat-arch-758b3f08da56310b5f1fe1d1bfd99d82.png" width="2814" height="1772" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeats-141-version-is-coming">HertzBeat's 1.4.1 version is coming!<a href="#hertzbeats-141-version-is-coming" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li><p>new login page</p><img loading="lazy" width="1952" alt="image" src="https://github.com/dromara/hertzbeat/assets/24788200/5bc5015a-9343-472d-9754-6b06b9138893" class="img_ev3q"><img loading="lazy" width="1950" alt="image" src="https://github.com/dromara/hertzbeat/assets/24788200/71a29284-9cad-4ed2-983a-50430ddb1e2f" class="img_ev3q"></li><li><p>collector manage</p></li></ul><img loading="lazy" width="1943" alt="image" src="https://github.com/dromara/hertzbeat/assets/24788200/ba79f743-a450-4b01-adf0-5f15f3722c19" class="img_ev3q"><img loading="lazy" width="1901" alt="image" src="https://github.com/dromara/hertzbeat/assets/24788200/b090ec18-5aae-444e-9ef6-e62fd1d8d239" class="img_ev3q"><ul><li>new help moudle</li></ul><img loading="lazy" width="1942" alt="image" src="https://github.com/dromara/hertzbeat/assets/24788200/c635fab6-504b-47de-9b7e-0c2df86f7e6a" class="img_ev3q"><ul><li>monitor metrics dashboard name i18n</li></ul><img loading="lazy" width="1802" alt="image" src="https://github.com/dromara/hertzbeat/assets/24788200/d5c74647-6c18-4b12-b858-f29cf1c61661" class="img_ev3q"><ul><li>refactor collector dispatcher and more</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="install-quickly-via-docker">Install quickly via docker<a href="#install-quickly-via-docker" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ol><li>Just one command to get started:</li></ol><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat</code></p><p><code>or use quay.io (if dockerhub network connect timeout)</code></p><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat</code></p><ol start="2"><li><p>Access <code>http://localhost:1157</code> to start, default account: <code>admin/hertzbeat</code></p></li><li><p>Deploy collector clusters</p></li></ol><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">docker run -d -e IDENTITY=custom-collector-name -e MANAGER_HOST=127.0.0.1 -e MANAGER_PORT=1158 --name hertzbeat-collector tancloud/hertzbeat-collector</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><code>-e IDENTITY=custom-collector-name</code> : set the collector unique identity name.</li><li><code>-e MANAGER_HOST=127.0.0.1</code> : set the main hertzbeat server ip.</li><li><code>-e MANAGER_PORT=1158</code> : set the main hertzbeat server port, default 1158.</li></ul><p>Detailed config refer to <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Install HertzBeat via Docker</a></p><hr><h3 class="anchor anchorWithStickyNavbar_LWe7" id="whats-changed">What's Changed<a href="#whats-changed" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Welcome to explore more new version updates, thanks to the hard work of the community partners, love 💗!</p></blockquote><ul><li>bugfix npe when get undefined name monitor template yml by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1173" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1173</a></li><li>[bug fixed]<!-- -->When importing and exporting monitoring, support export collectors, configure collectors when importing by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1178" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1178</a></li><li>support alert threshold rule config system value row count by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1180" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1180</a></li><li>Update README.md by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1182" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1182</a></li><li>support config alert threshold tags bind by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1181" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1181</a></li><li>the back-end of help component has been built by @YutingNie in <a href="https://github.com/dromara/hertzbeat/pull/1160" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1160</a></li><li>support enable alert threshold auto resolved notice by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1185" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1185</a></li><li>Delete tag of the dashboard's homepage on the top four pages by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1189" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1189</a></li><li>replace obsolete <code>registry.npm.taobao.org</code> to<code>registry.npmmirror.com</code> by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1192" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1192</a></li><li>refactor MonitorServiceImpl by @Carpe-Wang in <a href="https://github.com/dromara/hertzbeat/pull/1190" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1190</a></li><li>config default system timezone and fix monitor status auto recover by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1187" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1187</a></li><li>update-doc-doris by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1193" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1193</a></li><li>[manager]<!-- --> support tidb database monitoring by @luxx-lq in <a href="https://github.com/dromara/hertzbeat/pull/733" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/733</a></li><li>refactor fix potential npe by @Carpe-Wang in <a href="https://github.com/dromara/hertzbeat/pull/1197" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1197</a></li><li>[ospp]<!-- --> support ui help massage component by @YutingNie in <a href="https://github.com/dromara/hertzbeat/pull/1199" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1199</a></li><li>support monitor metrics name i18n by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1198" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1198</a></li><li>support google analytics by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1202" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1202</a></li><li>refactor code and fix some npe by @Carpe-Wang in <a href="https://github.com/dromara/hertzbeat/pull/1201" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1201</a></li><li>bugfix fix found 2 dataQueue bean when not config common.queue param by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1205" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1205</a></li><li>Help component update by @YutingNie in <a href="https://github.com/dromara/hertzbeat/pull/1207" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1207</a></li><li>bugfix enterprise wechat push display content is too cumbersome by @l646505418 in <a href="https://github.com/dromara/hertzbeat/pull/1149" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1149</a></li><li>bugfix WeChatAppAlertNotifyHandlerImpl by @LINGLUOJUN in <a href="https://github.com/dromara/hertzbeat/pull/1208" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1208</a></li><li>add LINGLUOJUN as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1209" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1209</a></li><li>fix jmx jndi inject vulnerability by @luelueking in <a href="https://github.com/dromara/hertzbeat/pull/1215" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1215</a></li><li>add luelueking as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1217" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1217</a></li><li>bugfix monitoring param number limit range by @qyaaaa in <a href="https://github.com/dromara/hertzbeat/pull/1216" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1216</a></li><li>add qyaaaa as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1218" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1218</a></li><li>add app-ping i18n by @qyaaaa in <a href="https://github.com/dromara/hertzbeat/pull/1220" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1220</a></li><li>some codes opt by @LINGLUOJUN in <a href="https://github.com/dromara/hertzbeat/pull/1214" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1214</a></li><li>support deploy hertzbeat by kubernetes helm charts by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1221" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1221</a></li><li>bugfix threshold setting template variables has repeated parameters by @qyaaaa in <a href="https://github.com/dromara/hertzbeat/pull/1223" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1223</a></li><li>support display metrics i18n label when threshold setting by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1225" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1225</a></li><li>bugfix user role display not correctly on webui by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1227" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1227</a></li><li>add hertzbeat about msg card by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1229" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1229</a></li><li>add app-api i18n by @novohit in <a href="https://github.com/dromara/hertzbeat/pull/1236" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1236</a></li><li>add novohit as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1238" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1238</a></li><li>[feature]<!-- -->Add <code>getAlertDefinesByName</code>. by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1237" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1237</a></li><li>thread pool executor support shutdown gracefully by @LINGLUOJUN in <a href="https://github.com/dromara/hertzbeat/pull/1240" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1240</a></li><li>fix: expression injection RCE by @mikezzb in <a href="https://github.com/dromara/hertzbeat/pull/1241" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1241</a></li><li>[bugfix]<!-- -->Replace schema "{key1:value1}" to "{\"key1\":\"value1\"}" by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1245" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1245</a></li><li>[Refactor]<!-- --> Use static methods instead of constructors for Message.java by @gcdd1993 in <a href="https://github.com/dromara/hertzbeat/pull/1247" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1247</a></li><li>bugfix snake yaml decode rce by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1239" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1239</a></li><li>bugfix jackson deserialize localDatetime error by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1249" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1249</a></li><li>netty as an independent module, add new feature about collector list by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1244" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1244</a></li><li>support show deploy collector script in web by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1251" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1251</a></li><li>bugfix mongodb collect extra metrics npe by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1257" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1257</a></li><li>bugfix fix collector run cyclic when connect auth failed by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1256" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1256</a></li><li>update webapp login ui by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1260" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1260</a></li><li>bugfix collector can not auto reconnect when channel idle by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1259" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1259</a></li><li>update alarm notice wework app send content ui by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1258" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1258</a></li><li>[hertzbeat]<!-- --> release hertzbeat version v1.4.1 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1261" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1261</a></li><li>auto split webhook token when user input hook url by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1262" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1262</a></li></ul><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code> <code>ServerChan</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Welcome to HertzBeat Community Committer!]]></title>
<link>https://hertzbeat.apache.org/blog/2023/08/28/new-committer</link>
<guid>https://hertzbeat.apache.org/blog/2023/08/28/new-committer</guid>
<pubDate>Mon, 28 Aug 2023 00:00:00 GMT</pubDate>
<description><![CDATA[! hertzBeat]]></description>
<content:encoded><![CDATA[<p>! <a target="_blank" href="/assets/files/new-committer-f8ad9cf268df899234aaeaef8541e294.png">hertzBeat</a></p><p>It's great to welcome a new community <code>Committer</code>, unlike other contributors <code>logicz</code> comes from an Ops implementation position at Cyberoam rather than a development position, but the quality of the contributions, both in terms of code and documentation etc. is very high 👍. This is also our <code>HertzBeat</code> and other open source projects are not the same place, because the user group is more oriented to the operation and maintenance of the development, in our 139 contributors in the operation and maintenance engineers accounted for more than 30%, which breaks the open source project collaboration and contribution to the object are the inherent cognition of the development position, which shows that whether it is the operation and maintenance engineers and test engineers to contribute to the open source project participation is very enthusiastic! This shows that both operation and maintenance engineers and test engineers are very enthusiastic about contributing to open source projects, not just as bystanders to open source collaboration. Participation in open source projects is not exclusive to a certain group of people, but is open to all who want to participate, it may be a document, a script or a piece of code, imagine your participation in the open source project is deployed to thousands of servers to run running, to help others to be used or browse the Review discussion, git record will always be kept, this may be the significance of participation in open source projects.</p><blockquote><p>Welcome Dromara HertzBeat's newest community committer logicz, let's learn more about his open source experience!</p></blockquote><h2 class="anchor anchorWithStickyNavbar_LWe7" id="logicz">logicz<a href="#logicz" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Nickname: logicz</p><p>Name:QingraZhao</p><p>Work:iFLYTEK technical support &amp; operation and maintenance</p><p>Hertzbeat Committer</p><p>github:zqr10159</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="getting-to-know-hertzbeat">Getting to know Hertzbeat<a href="#getting-to-know-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>In March 2023, I started to contact Hertzbeat, due to the need for a complete monitoring-&gt;alerting platform for the project, due to the deployment of the project on the intranet, the company's internal closed-source monitoring platform can not be developed to meet the needs of cross-network segment alerts. Later in the github looking for open source monitoring platform, found Hertzbeat, easy to deploy and full-featured. The most important thing is that the author tom replies to issues and updates very quickly, very much in line with my imagination of the open source community, I'm very happy to be able to participate in open source and can see their own results for everyone to use.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="ongoing-open-source-contributions-and-gains">Ongoing open source contributions and gains<a href="#ongoing-open-source-contributions-and-gains" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>So far, to participate in the Hertzbeat open source project has been more than five months, from the first time to submit issues to the first time to submit pr, are the process of growth and progress, full count or a lot of pr, specific as follows:</p><p><strong> contribution </strong>:</p><ul><li><p>Realize real-time data deposited into Redis custom db</p></li><li><p>New historical data deposited into GreptimeDB</p></li><li><p>provide monitoring batch import, export to xlsx and yml file function</p></li><li><p>Provide Web page custom mail server settings</p></li><li><p>Provide Apache doris FE,BE monitoring template.</p></li><li><p>Implement Server Chan (Server Chan) alarm push notification.</p></li><li><p>Access to third-party alarms (Tencent Cloud) to realize unified push notification of third-party alarms and Hertzbeat alarms.</p></li><li><p>Fix bugs such as not including collector information when importing and exporting monitoring.</p></li><li><p>Several document updates</p></li><li><ul><li>Harvesting **:</li></ul></li><li><p>Hertzbeat is really an excellent project, in terms of project deployment, scripts and configuration are very standardized, I write a lot of my own projects have to draw on</p></li><li><p>The most important thing is to harvest the spirit of open source, we are in a community to communicate together, progress</p></li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="thanks-to-the-community-partners">Thanks to the community partners<a href="#thanks-to-the-community-partners" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Thanks to the author tom's guidance, he is really very good, patient and diligent, often in the middle of the night to change the bugs, thanks to him step by step to take me to the open source road (and also sent me two open source community T-shirts ^<!-- -->_<!-- -->^)</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="a-little-advice-for-newcomers">A little advice for newcomers<a href="#a-little-advice-for-newcomers" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>open source is not easy, to be able to stick with it, and share their results with everyone is a great sense of achievement</li><li>Adopt good code habits, code can be written poorly, comments must be written clearly, so that other people can read and modify your code.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>HertzBeat HertzBeat is an open source real-time monitoring and alerting system with powerful customizable monitoring capabilities, high-performance clustering, and no Agent required.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>HertzBeat is an open source real-time monitoring and alerting system with powerful customizable monitoring capabilities, high performance clustering, and no agent required.</li><li>Easy to use and friendly, no need for <code>Agent</code>, full <code>WEB</code> page operation, a little mouse click to monitor and alerts, zero hands-on learning costs.</li><li>Configurable protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc</code>, etc. Just configure the monitoring template <code>YML</code> in your browser to customize the metrics you want to collect using these protocols. Can you believe that you can instantly adapt to a new type of monitoring such as <code>K8s</code> or <code>Docker</code> by just configuring it?</li><li>High performance, support for horizontal scaling of multiple collector clusters, support for multi-isolated network monitoring, cloud-side collaboration.</li><li>Free alert threshold rules, <code>Email</code> <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>WeChat</code> <code>Dingtalk</code> <code>Flybook</code> <code>SMS</code> <code>Webhook</code> <code>Server Chan</code> and other methods of timely delivery of messages.</li></ul><blockquote><p><code>HertzBeat</code>'s powerful customization, multi-type support, high performance, easy to extend, low-coupling, and hopefully can help developers and teams to quickly build their own monitoring system.</p></blockquote><p>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><p>More users are welcome to participate in <code>HertzBeat</code> open source collaboration, no matter a typo or punctuation we are very welcome.</p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.4.0 released, cluster is coming!]]></title>
<link>https://hertzbeat.apache.org/blog/2023/08/14/hertzbeat-v1.4.0</link>
<guid>https://hertzbeat.apache.org/blog/2023/08/14/hertzbeat-v1.4.0</guid>
<pubDate>Mon, 14 Aug 2023 00:00:00 GMT</pubDate>
<description><![CDATA[hertzBeat]]></description>
<content:encoded><![CDATA[<p><img loading="lazy" alt="hertzBeat" src="/assets/images/0-e6b0a393f2a8e43af9bf271c436a823d.png" width="4064" height="2166" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom monitoring, high performance cluster and agentless capabilities.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="#features" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>Combines <strong>monitoring, alarm, and notification</strong> features into one platform, and supports monitoring for web service, program, database, cache, os, webserver, middleware, bigdata, cloud-native, network, custom and more.</li><li>Easy to use and agentless, offering full web-based operations for monitoring and alerting with just a few clicks, all at zero learning cost.</li><li>Makes protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, allowing you to collect any metrics by simply configuring the template <code>YML</code> file online. Imagine being able to quickly adapt to a new monitoring type like K8s or Docker simply by configuring online with HertzBeat.</li><li>High performance, supports horizontal expansion of multi-collector clusters, multi-isolated network monitoring and cloud-edge collaboration.</li><li>Provides flexible alarm threshold rules and timely notifications delivered via <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</li></ul><blockquote><p>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. </p></blockquote><p><img loading="lazy" alt="hertzBeat" src="/assets/images/hertzbeat-arch-758b3f08da56310b5f1fe1d1bfd99d82.png" width="2814" height="1772" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="the-cluster-version-is-coming">The cluster version is coming<a href="#the-cluster-version-is-coming" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Our previous hertzbeat has always been a stand-alone version. The component code is modular but does not support the independent deployment of the collector. The upper limit of the number of monitoring supported is naturally limited by a single node, and it cannot cope with the unified management of resources in multiple isolated networks.
After more than a month of iterations, we rewrote the collection task scheduling, deployed the collectors independently, and designed the stand-alone version and the cluster version to use the same set of codes to facilitate subsequent maintenance and upgrades. The two modes of the stand-alone cluster can be switched without perception. In the end, I am very happy that the cluster version met with you as scheduled.</p><p>The cluster version not only brings us more powerful monitoring performance, but also has functions such as cloud-side collaboration that are full of imagination.</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="high-performance-cluster">High performance cluster<a href="#high-performance-cluster" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>Supports the deployment of collector clusters, multi-collector clusters scale horizontally, and exponentially improves the number of monitors and collection performance.</li><li>The monitoring task is self-scheduled in the collector cluster. A single collector hangs up and migrates the collection task without perceptual failure. Newly added collector nodes are automatically scheduled to share the collection pressure.</li><li>It is very convenient to switch between stand-alone mode and cluster mode and deploy without additional components.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/cluster-arch-d829b210ab749a048ff6bedef09260b9.png" width="2807" height="911" class="img_ev3q"></p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="cloud-edge-collaboration">Cloud Edge Collaboration<a href="#cloud-edge-collaboration" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><blockquote><p>Support the deployment of edge collector clusters, and cooperate with the main HertzBeat service cloud to improve collection capabilities.</p></blockquote><p>In the isolated network where multiple networks are not connected, in the previous solution, we needed to deploy a monitoring system on each network, which resulted in the incompatibility of data and inconvenient management, deployment and maintenance.
HertzBeat provides cloud-edge collaboration capabilities. Edge collectors can be deployed on multiple isolated networks. When monitoring is added, collectors are specified. The collectors collect monitoring tasks within the isolated network, and report the collected data. The main HertzBeat service performs unified scheduling, management and display.
This is mostly used in unified monitoring scenarios of multiple isolated data centers or cloud resources and resources under the cloud of different vendors.</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/cluster-arch-d829b210ab749a048ff6bedef09260b9.png" width="2807" height="911" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="why-open-source-cluster-version">Why open source cluster version?<a href="#why-open-source-cluster-version" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Often, some strategies for making open source products that need to be commercialized will be to use the stand-alone version as a toy for the beginners of small players, and then use the cluster version as a closed-source product for paid players who need it. This model can be said to be very good and worthy of recognition, that is, to ensure that open source can also get benefits, and it is also applicable to the development strategy of many open source projects, and it may be more smooth on the business path.
Some people on the Internet will sneer at such open source projects that are divided into stand-alone and cluster versions, thinking that they are pseudo-open source, and open source is a gimmick. They think that open source should be open source and free, and the open source team should contribute everything selflessly. . . . Very speechless people like this, there is only return for investment. When you use open source software for free and get value, should you think about what you have paid for open source software instead of just asking for it.
So back to the topic, why do we want an open source cluster version? Just because you love open source? If you say that we are still teenagers, you may believe this, but do you believe this when a person who is going to be 30 and has family responsibilities says this, I don’t believe it myself😂.
First of all, let's take a look at what open source can bring, or why open source should be done. The idea of full-time open source at the beginning is very simple, to make your favorite open source product (realized), the programmer's dream can be deployed on thousands of servers (see the downloads have been realized), and then make money based on this open source product ( not crying yet).</p><ul><li>User traffic. Open source projects are provided free of charge to users and developers, and have advantages in attracting users to use and promoting them.</li><li>User trust. Open source products are naturally easy to gain the trust and patience of users, or lower the threshold of trust for users.</li><li>Community collaboration. Open source products can attract top contributors to contribute together, receive user feedback issues, pr contributions, etc. Driven by the community, open source projects will become better and better, and more people will participate and use them after positive feedback. Community collaboration I think this is the meaning of open source, and this is not just the contribution code collaboration between programmers, users are all collaboration objects (for example, our project has a large number of operation and maintenance friends who contribute code and documents), if it is only code Open source without community collaboration, it is better to release an installation package for others to use and download for free.</li><li>Product ecology. This is required for some ecological products, such as hertzbeat, which need to support monitoring types that connect to various types of protocols, and a large number of monitoring templates. Only a good open source project ecology can attract other contributors to contribute and share, exchange what is needed in the ecology, and ultimately everyone will benefit from the ecology. This is difficult to do in closed source programs.</li></ul><p>The above points focus on community collaboration and product ecology. This is also the reason for the open source cluster version. Only open source products can be rolled into stronger product power. For example, the technical feature of cluster will naturally attract developers (and the cluster itself is The product of our community collaboration) will attract more users and contributors to use feedback and iterate together. The community drives and then positively promotes open source projects and satisfies user functional experience.
As for open source commercialization, the premise of open source commercialization is to have a really good, popular, and widely used open source product, and then do commercialization on this basis to make money.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="install-quickly-via-docker">Install quickly via docker<a href="#install-quickly-via-docker" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ol><li>Just one command to get started:</li></ol><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat tancloud/hertzbeat</code></p><p><code>or use quay.io (if dockerhub network connect timeout)</code></p><p><code>docker run -d -p 1157:1157 -p 1158:1158 --name hertzbeat quay.io/tancloud/hertzbeat</code></p><ol start="2"><li><p>Access <code>http://localhost:1157</code> to start, default account: <code>admin/hertzbeat</code></p></li><li><p>Deploy collector clusters</p></li></ol><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">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</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><code>-e IDENTITY=custom-collector-name</code> : set the collector unique identity name.</li><li><code>-e MANAGER_IP=127.0.0.1</code> : set the main hertzbeat server ip.</li><li><code>-e MANAGER_PORT=1158</code> : set the main hertzbeat server port, default 1158.</li></ul><p>Detailed config refer to <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Install HertzBeat via Docker</a></p><hr><h3 class="anchor anchorWithStickyNavbar_LWe7" id="whats-changed">What's Changed<a href="#whats-changed" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Welcome to explore more new version updates, thanks to the hard work of the community partners, love 💗!</p></blockquote><ul><li>[doc]<!-- --> add v1.3.2 publish doc by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1075" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1075</a></li><li>remove elasticsearch unused param index by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1080" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1080</a></li><li>feature support monitoring apache airflow by @luoxuanzao in <a href="https://github.com/dromara/hertzbeat/pull/1081" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1081</a></li><li>add luoxuanzao as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1083" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1083</a></li><li>[collector]<!-- --> bugfix sshd cannot use private key to connect by @gcdd1993 in <a href="https://github.com/dromara/hertzbeat/pull/1084" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1084</a></li><li>bugfix update dashboard alerts cards height not consist by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1087" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1087</a></li><li>Feature#serverchan by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1092" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1092</a></li><li>bugfix dm database monitoring connect error by @lisongning in <a href="https://github.com/dromara/hertzbeat/pull/1094" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1094</a></li><li>add lisongning as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1096" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1096</a></li><li>update alert rule operator display "&lt;=" to "&gt;=" by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1097" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1097</a></li><li>[doc]<!-- --> add custom monitoring relate document by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1098" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1098</a></li><li>add YutingNie as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1103" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1103</a></li><li>Remove unreachable status by @YutingNie in <a href="https://github.com/dromara/hertzbeat/pull/1102" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1102</a></li><li>139 auto update alert status by @l646505418 in <a href="https://github.com/dromara/hertzbeat/pull/1104" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1104</a></li><li>feat: aviator fn for str contains, exists &amp; matches by @mikezzb in <a href="https://github.com/dromara/hertzbeat/pull/1106" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1106</a></li><li>add mikezzb as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1107" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1107</a></li><li>bugfix common alarm do not need monitorId tag existed by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1108" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1108</a></li><li>bugfix extern alert do not have labels mapping inner monitor by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1111" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1111</a></li><li>feature: support apache spark metrics monitoring by @a-little-fool in <a href="https://github.com/dromara/hertzbeat/pull/1114" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1114</a></li><li>add a-little-fool as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1116" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1116</a></li><li>[Feature]<!-- -->Add third report of TenCloud by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1113" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1113</a></li><li>[Feature]<!-- -->Add third report of TenCloud (#1113) by @zqr10159 in <a href="https://github.com/dromara/hertzbeat/pull/1119" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1119</a></li><li>[manager]<!-- --> fix: can query by tags when tagValue is null by @l646505418 in <a href="https://github.com/dromara/hertzbeat/pull/1118" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1118</a></li><li>bugfix the notification template environment variable display error by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1120" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1120</a></li><li>add littlezhongzer as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1127" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1127</a></li><li>feature:monitor brearer token api, ignore letter case to comparison by @littlezhongzer in <a href="https://github.com/dromara/hertzbeat/pull/1122" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1122</a></li><li>docs: enhance README by @mikezzb in <a href="https://github.com/dromara/hertzbeat/pull/1128" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1128</a></li><li>Update app-oracle.yml by @ChenXiangxxxxx in <a href="https://github.com/dromara/hertzbeat/pull/1129" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1129</a></li><li>add ChenXiangxxxxx as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1130" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1130</a></li><li>fix alarm silence strategy setting failed by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1131" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1131</a></li><li>support run sql script file in jdbc protocol config by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1117" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1117</a></li><li>bugfix return old cache json file when upgrade version by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1137" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1137</a></li><li>support ssh protocol config choose if reuse connection by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1136" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1136</a></li><li>feat(web): alert threshold UI support matches &amp; contains by @mikezzb in <a href="https://github.com/dromara/hertzbeat/pull/1138" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1138</a></li><li>support hertzbeat metrics collector cluster by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1101" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1101</a></li><li>add collector card in dashboard by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1147" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1147</a></li><li>bugfix: linux collect warning: bad syntax, perhaps a bogus '-' by @Mr-zhou315 in <a href="https://github.com/dromara/hertzbeat/pull/1151" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1151</a></li><li>add Mr-zhou315 as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1157" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1157</a></li><li>support config timezone locale language region on web ui by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1154" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1154</a></li><li>bugfix monitoring template app name already exists by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1152" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1152</a></li><li>bugfix can not startup when error monitoring template yml file by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1153" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1153</a></li><li>tags also deleted when the monitor is deleted by @Ceilzcx in <a href="https://github.com/dromara/hertzbeat/pull/1159" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1159</a></li><li>monitoring param host with http head will not be error reported by @littlezhongzer in <a href="https://github.com/dromara/hertzbeat/pull/1155" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1155</a></li><li>[script]<!-- --> feature update build.sh and Dockerfile: detect app version a… by @XimfengYao in <a href="https://github.com/dromara/hertzbeat/pull/1162" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1162</a></li><li>add XimfengYao as a contributor for code by @allcontributors in <a href="https://github.com/dromara/hertzbeat/pull/1163" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1163</a></li><li>[doc]<!-- --> add collector clusters document by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1161" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1161</a></li><li>[hertzbeat]<!-- --> release hertzbeat version v1.4.0 by @tomsun28 in <a href="https://github.com/dromara/hertzbeat/pull/1168" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/pull/1168</a></li></ul><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Open source monitoring HertzBeat v1.3.2 released, Easier to use]]></title>
<link>https://hertzbeat.apache.org/blog/2023/07/05/hertzbeat-v1.3.2</link>
<guid>https://hertzbeat.apache.org/blog/2023/07/05/hertzbeat-v1.3.2</guid>
<pubDate>Wed, 05 Jul 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Website: hertzbeat.com | tancloud.cn]]></description>
<content:encoded><![CDATA[<p>Website: hertzbeat.com | tancloud.cn</p><p><img loading="lazy" alt="hertzBeat" src="/assets/images/0-e6b0a393f2a8e43af9bf271c436a823d.png" width="4064" height="2166" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom-monitoring and agentLess.
<strong>Monitoring+Alarm+Notify</strong> all in one. Support monitoring web service, database, os, middleware, cloud-native, network and more.<br>
<!-- -->Easy to use, full web-based operation, monitoring and alerting at the click of a mouse, zero learning cost.<br>
<!-- -->More flexible threshold rule, timely notification delivery by <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</p></blockquote><blockquote><p>We make protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, and you only need to configure <code>YML</code> online to collect any metrics you want.<br>
<!-- -->Do you believe that you can immediately adapt a new monitoring type such as K8s or Docker just by configuring online?</p></blockquote><blockquote><p><code>HertzBeat</code>'s powerful custom-define, multi-type support, easy expansion, low coupling, hope to help developers and micro teams to quickly build their own monitoring system.<br>
<!-- -->We also provide <strong><a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Monitoring SaaS Cloud</a></strong>, users no longer need to deploy a cumbersome monitoring system in order to monitor resources. <strong><a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Get started for free</a></strong>.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/4236e748f5ac4352b7cf4bb65ccf97aa~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="v132">v1.3.2<a href="#v132" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Hi guys! Major release. HertzBeat v1.3.2 has published. </p><p><strong>This delightful version came out of the hard work of 27 friends. Thank them! Love 💗</strong></p><p>In this version, we support new monitoring types and metrics for <strong>freebsd, debian, opensuse, redhat, apache doris</strong>, etc.</p><ul><li>Support WEB page configuration mail server, replace the previous file configuration</li><li>Supports alarm convergence. If repeated alarms are frequently sent, it will be resolved immediately with alarm convergence</li><li>The public message queue supports Kafka. In addition to our default built-in memory message queue, it also supports an external Kafka message queue to improve system performance.</li><li>The new monitoring center page aggregates all monitoring types, no need to switch back and forth like before.</li><li>Support label group display, group and mark monitors of the same business category for unified management.</li><li>Threshold configuration not only has expressions, but also supports a more user-friendly operation UI. The previous expressions were not friendly to newcomers and were prone to errors. Now you can directly operate the UI, and it can switch between expressions.</li><li>There are many more functions such as HTTP ipv6.</li></ul><p>Fixed a large number of BUG, improved the document code, and improved the overall stability and usability. More new features are welcome to explore!</p><p>Let's Try Now!</p><p>Only one docker command is needed to install and experience hertzbeat:</p><p><code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p><code>or use quay.io (if dockerhub network connect timeout)</code></p><p><code>docker run -d -p 1157:1157 --name hertzbeat quay.io/tancloud/hertzbeat</code></p><hr><p>Upgrade Note⚠️.</p><p>For h2 database users, sholud exec sql below:</p><div class="language-sql codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-sql codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">ALTER</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">TABLE</span><span class="token plain"> HZB_PARAM </span><span class="token keyword" style="color:#00009f">DROP</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">CONSTRAINT</span><span class="token plain"> CONSTRAINT_82</span><span class="token punctuation" style="color:#393A34">;</span><span class="token punctuation" style="color:#393A34">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>How to Enable H2 WEB Console:<br>
<!-- -->Modify <code>application.yml</code> and restart, access <code>ip:1157/h2-console</code></p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">spring:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> h2:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> console:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> path: /h2-console</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> enabled: true</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[GreptimeDB & HertzBeat, using the open source temporal database GreptimeDB to store metrics for the open source real-time monitoring HertzBeat]]></title>
<link>https://hertzbeat.apache.org/blog/2023/05/11/greptimedb-store</link>
<guid>https://hertzbeat.apache.org/blog/2023/05/11/greptimedb-store</guid>
<pubDate>Thu, 11 May 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Using GreptimeDB, an open source temporal database, to store metrics for open source real-time monitoring HertzBeat]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="using-greptimedb-an-open-source-temporal-database-to-store-metrics-for-open-source-real-time-monitoring-hertzbeat">Using GreptimeDB, an open source temporal database, to store metrics for open source real-time monitoring HertzBeat<a href="#using-greptimedb-an-open-source-temporal-database-to-store-metrics-for-open-source-real-time-monitoring-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-greptimedb">What is GreptimeDB?<a href="#what-is-greptimedb" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p><a href="https://github.com/GreptimeTeam/greptimedb" target="_blank" rel="noopener noreferrer">GreptimeDB</a> is an open source, distributed, cloud-native temporal database that fuses temporal data processing and analytics.</p></blockquote><ul><li>Complete ecosystem, support a large number of open protocols, compatible with MySQL/PostreSQL/PromQL/OpenTSDB, etc., low learning cost, out-of-the-box.</li><li>Mixed load of timing and analytics, support for highly concurrent read/write; native support for PromQL, support for SQL/Python for powerful in-library analytics.</li><li>Efficient storage and computation, with object storage and high data compression rate to achieve ultra-low storage costs. Built-in data analytics solution to avoid replicating data to external data warehouses.</li><li>Distributed, Highly Reliable &amp; Highly Available, easily scale each module independently with decoupled cloud-native architecture. Ensure data reliability and availability with configurable replicas and automated failover mechanisms.</li></ul><p>Cloud: <strong><a href="https://greptime.com/playground" target="_blank" rel="noopener noreferrer">GreptimePlay</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source real-time monitoring and alerting tool with powerful customizable monitoring capabilities and no Agent required.</p></blockquote><ul><li>HertzBeat is an open source real-time monitoring and alerting tool with powerful customizable monitoring capabilities without the need for an agent. It integrates <strong>Monitoring+Alerting+Notification</strong> All in one, supports monitoring of application services, applications, databases, caching, operating systems, big data, middleware, web servers, cloud native, network, customization, etc., and notifies you of thresholds and alerts all in one step.</li><li>More liberalized threshold rules (calculation expressions), <code>Email</code> <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Pinned</code> <code>Dingtalk</code> <code>WeChat</code> <code>Flybook</code> <code>SMS</code> <code>Webhook</code> and other ways to deliver in time.</li><li>Configurable <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> and other protocol specifications, just configure the <code>YML</code> monitoring template in the browser to use these protocols to customize the collection of desired metrics.</li></ul><blockquote><p>With <code>HertzBeat</code>'s powerful customization, multi-type support, easy scalability and low coupling, we hope to help developers and small and medium-sized teams to quickly build their own monitoring system.</p></blockquote><p>Cloud: <strong><a href="https://console.tancloud.cn/" target="_blank" rel="noopener noreferrer">TanCloud</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="greptimedb--hertzbeat">GreptimeDB &amp; HertzBeat<a href="#greptimedb--hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>In the following section, we will demonstrate step-by-step how HertzBeat can be combined with GreptimeDB as a storage to store the collected metrics data.</p></blockquote><h4 class="anchor anchorWithStickyNavbar_LWe7" id="installing-and-deploying-greptimedb">Installing and Deploying GreptimeDB<a href="#installing-and-deploying-greptimedb" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><p>You can refer to the <a href="https://docs.greptime.com/getting-started/overview#docker" target="_blank" rel="noopener noreferrer">official documentation</a> for more details.</p><ol><li>Docker installation of GreptimeDB</li></ol><div class="language-shell codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-shell codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">$ </span><span class="token function" style="color:#d73a49">docker</span><span class="token plain"> run -p </span><span class="token number" style="color:#36acaa">4000</span><span class="token plain">-4004:4000-4004 </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -p </span><span class="token number" style="color:#36acaa">4242</span><span class="token plain">:4242 -v </span><span class="token string" style="color:#e3116c">"</span><span class="token string variable" style="color:#36acaa">$(</span><span class="token string variable builtin class-name" style="color:#36acaa">pwd</span><span class="token string variable" style="color:#36acaa">)</span><span class="token string" style="color:#e3116c">/greptimedb:/tmp/greptimedb"</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --name greptime </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> greptime/greptimedb:0.2.0 standalone start </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --http-addr </span><span class="token number" style="color:#36acaa">0.0</span><span class="token plain">.0.0.0:4000 </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --rpc-addr </span><span class="token number" style="color:#36acaa">0.0</span><span class="token plain">.0.0:4001</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><code>-v "$(pwd)/greptimedb:/tmp/greptimedb"</code> is the local persistent mount for the greptimeDB data directory, it is recommended to replace <code>$(pwd)/greptimedb</code> with the actual local directory you want to specify for storage.</li></ul><ol start="2"><li>Use <code>$ docker ps | grep greptime</code> to see if GreptimeDB started successfully.</li></ol><h4 class="anchor anchorWithStickyNavbar_LWe7" id="installing-and-deploying-hertzbeat">Installing and Deploying HertzBeat<a href="#installing-and-deploying-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><p>See the <a href="https://hertzbeat.com/zh-cn/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">official documentation</a> for details.</p><ol><li>Docker installs HertzBeat.</li></ol><div class="language-shell codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-shell codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">$ </span><span class="token function" style="color:#d73a49">docker</span><span class="token plain"> run -d -p </span><span class="token number" style="color:#36acaa">1157</span><span class="token plain">:1157 </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e </span><span class="token assign-left variable environment constant" style="color:#36acaa">LANG</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">zh_CN.UTF-8 </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e </span><span class="token assign-left variable" style="color:#36acaa">TZ</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">Asia/Shanghai </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -v /opt/data:/opt/hertzbeat/data </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -v /opt/application.yml:/opt/hertzbeat/config/application.yml </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --restart</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">always </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --name hertzbeat tancloud/hertzbeat</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li><p><code>-v /opt/data:/opt/hertzbeat/data</code> : (Optional, data persistence) Important ⚠️ Mount the H2 database files to the local host to ensure that the data will not be lost due to the creation and deletion of the container</p></li><li><p><code>-v /opt/application.yml:/opt/hertzbeat/config/application.yml</code> : Mount customized local configuration files to the container, i.e. use local configuration files to overwrite the container configuration files.</p></li></ul><p>Note that the ⚠️ local mount configuration file <code>application.yml</code> needs to exist in advance, and the full contents of the file can be found in the project repository <!-- -->[/script/application.yml]<!-- -->(<a href="https://github.com/dromara/hertzbeat/raw/master/script/" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/raw/master/script/</a> application.yml)</p><ol start="2"><li>Go to http://ip:1157/ with the default account and password admin/hertzbeat to see if HertzBeat starts successfully.</li></ol><h4 class="anchor anchorWithStickyNavbar_LWe7" id="configure-to-use-greptimedb-to-store-hertzbeat-monitoring-metrics-metrics-data">Configure to use GreptimeDB to store HertzBeat monitoring metrics metrics data<a href="#configure-to-use-greptimedb-to-store-hertzbeat-monitoring-metrics-metrics-data" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Modify the HertzBeat configuration file.</li></ol><p>Modify the locally mounted HertzBeat configuration file <a href="https://github.com/dromara/hertzbeat/raw/master/script/application.yml" target="_blank" rel="noopener noreferrer">application.yml</a>, in package mode modify `hertzbeat/ config/application.yml</p><p><strong>Modify the <code>warehouse.store.jpa.enabled</code> parameter in there to <code>false</code>, configure the <code>warehouse.store.greptime</code> datasource parameter in there, the URL account password, and enable <code>enabled</code> to <code>true</code></strong>.</p><div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token key atrule" style="color:#00a4db">warehouse</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">store</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">jpa</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">enabled</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">greptime</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">enabled</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">endpoint</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> localhost</span><span class="token punctuation" style="color:#393A34">:</span><span class="token number" style="color:#36acaa">4001</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="2"><li>Restart HertzBeat.</li></ol><div class="language-shell codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-shell codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">$ </span><span class="token function" style="color:#d73a49">docker</span><span class="token plain"> restart hertzbeat</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h4 class="anchor anchorWithStickyNavbar_LWe7" id="observe-the-authentication-effect">Observe the authentication effect<a href="#observe-the-authentication-effect" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>visit HertzBeat in your browser http://ip:1157/ default account password admin/hertzbeat</li><li>Use HertzBeat to add application monitors, such as website monitors, Linux monitors, Mysql monitors, and so on.</li><li>After monitoring and collecting several cycles, check whether GreptimeDB database stores the metrics data and whether HertzBeat metrics data graph data is displayed normally.</li></ol><p>Here's the picture: !</p><p><img loading="lazy" alt="1" src="/assets/images/greptime-1-d2ba51f5163374602e1a0643db6edbcc.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="1" src="/assets/images/greptime-2-264d43273a7cfe3bda1112db315c6f1c.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="1" src="/assets/images/greptime-3-7640c67312e8c1db060284867b78d65e.png" width="2764" height="1664" class="img_ev3q"></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>This article took us to experience how to use the open source time-series database GreptimeDB to store the metrics data of the open source real-time monitoring HertzBeat, in general, the two open source products is very simple to get started, the key is that if it is too much trouble do not want to deploy both of them still have cloud services 😂 let you toss.<br>
<!-- -->As one of the developers of the feature <a href="https://github.com/dromara/hertzbeat/pull/834" target="_blank" rel="noopener noreferrer">HertzBeat supports GreptimeDB</a>, in the actual adaptation process, GreptimeDB's silky-smooth native SDK and relational database-like SQL, let us from other GreptimeDB native SDK and relational database-like SQL make it very easy to switch from other time-series databases like <code>TDengine, IotDB, InfluxDB</code> to GreptimeDB, and the experience is very smooth.</p><p>GreptimeDB Github: <a href="https://github.com/GreptimeTeam/greptimedb" target="_blank" rel="noopener noreferrer">https://github.com/GreptimeTeam/greptimedb</a><br>
<!-- -->HertzBeat Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><p><strong> Finally, you are welcome to be more understanding, more use, more comments, more ISSUE, more PR, more Star support these two did not come out for a long time hope to get care of open source cattle are not afraid of difficulties a small star oh! Do open source, we are sincere, love 💗</strong></p><p>Thanks to the contributors of this feature <a href="https://github.com/dromara/hertzbeat/pull/834" target="_blank" rel="noopener noreferrer">HertzBeat support GreptimeDB</a> @zqr10159, @fengjiachun, @killme2008, @tomsun28</p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Open source real-time monitoring tool HertzBeat v1.3.1 released]]></title>
<link>https://hertzbeat.apache.org/blog/2023/05/09/hertzbeat-v1.3.1</link>
<guid>https://hertzbeat.apache.org/blog/2023/05/09/hertzbeat-v1.3.1</guid>
<pubDate>Tue, 09 May 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Website: hertzbeat.com | tancloud.cn]]></description>
<content:encoded><![CDATA[<p>Website: hertzbeat.com | tancloud.cn</p><p><img loading="lazy" alt="hertzBeat" src="/assets/images/0-e6b0a393f2a8e43af9bf271c436a823d.png" width="4064" height="2166" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring system with custom-monitoring and agentLess.
<strong>Monitoring+Alarm+Notify</strong> all in one. Support monitoring web service, database, os, middleware, cloud-native, network and more.<br>
<!-- -->Easy to use, full web-based operation, monitoring and alerting at the click of a mouse, zero learning cost.<br>
<!-- -->More flexible threshold rule, timely notification delivery by <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</p></blockquote><blockquote><p>We make protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, and you only need to configure <code>YML</code> online to collect any metrics you want.<br>
<!-- -->Do you believe that you can immediately adapt a new monitoring type such as K8s or Docker just by configuring online?</p></blockquote><blockquote><p><code>HertzBeat</code>'s powerful custom-define, multi-type support, easy expansion, low coupling, hope to help developers and micro teams to quickly build their own monitoring system.<br>
<!-- -->We also provide <strong><a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Monitoring SaaS Cloud</a></strong>, users no longer need to deploy a cumbersome monitoring system in order to monitor resources. <strong><a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Get started for free</a></strong>.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/4236e748f5ac4352b7cf4bb65ccf97aa~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="v131-release-is-here">v1.3.1 release is here<a href="#v131-release-is-here" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Hi guys! Major release. HertzBeat v1.3.1 is coming. <strong>So excited that more than 30 friends have contributed this version.</strong>.<br>
<!-- -->We support <strong>greptimeDB, tedngine3.0 and opengauss influxdb</strong> to store to metrics data.<br>
<!-- -->New feature <strong>monitoring export and import by excel json yaml</strong> , <strong>alert silence</strong>, <strong>new monitoring template</strong> and more.<br>
<!-- -->Support monitoring EulerOS metrics and SpringBoot3 metrics. Fixed several bugs, imporved document and improved the overall stable usability.</p><p>Let's Try Now!</p><p>Only one docker command is needed to install and experience hertzbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="upgrade-note️">Upgrade Note⚠️.<a href="#upgrade-note️" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>If use tdengine before, please upgrade tdengine to 3.0+</p><p>Please Run SQL Script When Upgrade.</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">ALTER table hzb_alert_define modify field varchar(255) default null;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">COMMIT;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Monitoring SpringBoot2 Metrics with HertzBeat in 5 minutes]]></title>
<link>https://hertzbeat.apache.org/blog/2023/03/22/monitor-springboot2</link>
<guid>https://hertzbeat.apache.org/blog/2023/03/22/monitor-springboot2</guid>
<pubDate>Wed, 22 Mar 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Use the open source real-time monitoring tool HertzBeat to monitor and alarm the SpringBoot2 application, and it will be done in 5 minutes!]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="use-the-open-source-real-time-monitoring-tool-hertzbeat-to-monitor-and-alarm-the-springboot2-application-and-it-will-be-done-in-5-minutes">Use the open source real-time monitoring tool HertzBeat to monitor and alarm the SpringBoot2 application, and it will be done in 5 minutes!<a href="#use-the-open-source-real-time-monitoring-tool-hertzbeat-to-monitor-and-alarm-the-springboot2-application-and-it-will-be-done-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeat-intro">HertzBeat Intro<a href="#hertzbeat-intro" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source, real-time monitoring tool with custom-monitor and agentLess. | 易用友好的开源实时监控告警工具,无需Agent,强大自定义监控能力.</p></blockquote><blockquote><p><strong>Monitor+Alerter+Notify</strong> all in one. Support monitoring web service, database, os, middleware, cloud-native, network and more.<br>
<!-- -->More flexible threshold rule(calculation expression), timely notification delivery by <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</p></blockquote><blockquote><p>We make protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, and you only need to configure <code>YML</code> online to collect any metrics you want.<br>
<!-- -->Do you believe that you can immediately adapt a new monitoring type such as K8s or Docker just by configuring online?</p></blockquote><blockquote><p><code>HertzBeat</code>'s powerful custom-define, multi-type support, easy expansion, low coupling, hope to help developers and micro teams to quickly build their own monitoring system. </p></blockquote><p>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="monitoring-springboot2-metrics-with-hertzbeat-in-5-minutes">Monitoring SpringBoot2 Metrics with HertzBeat in 5 minutes<a href="#monitoring-springboot2-metrics-with-hertzbeat-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="prerequisite-you-already-have-springboot2-application-environment-and-hertzbeat-environment">Prerequisite, you already have SpringBoot2 application environment and HertzBeat environment.<a href="#prerequisite-you-already-have-springboot2-application-environment-and-hertzbeat-environment" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Installation and deployment documentation</a></li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="1-the-actuator-metric-endpoint-is-exposed-on-the-springboot2-application-side-which-will-provide-metrics-endpoints-data">1. The <code>actuator</code> metric endpoint is exposed on the SpringBoot2 application side, which will provide metrics endpoints data.<a href="#1-the-actuator-metric-endpoint-is-exposed-on-the-springboot2-application-side-which-will-provide-metrics-endpoints-data" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Open SpringBoot Actuator Endpoint to expose <code>metrics health env</code> metric interface</li></ol><div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token key atrule" style="color:#00a4db">management</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">endpoints</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">web</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">exposure</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">include</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">-</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'metrics'</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">-</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'health'</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">-</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'env'</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">enabled-by-default</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> on</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="2"><li>After restarting, test whether the access metric interface <code>ip:port/actuator</code> has response json data as follows:</li></ol><div class="language-json codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-json codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"_links"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"self"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"health-path"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator/health/{*path}"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"health"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator/health"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"env"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator/env"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"env-toMatch"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator/env/{toMatch}"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"metrics-requiredMetricName"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator/metrics/{requiredMetricName}"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"metrics"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"href"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"http://localhost:1157/actuator/metrics"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"templated"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h4 class="anchor anchorWithStickyNavbar_LWe7" id="add-springboot2-application-monitoring-in-the-hertzbeat-monitoring-ui">Add SpringBoot2 application monitoring in the HertzBeat monitoring ui<a href="#add-springboot2-application-monitoring-in-the-hertzbeat-monitoring-ui" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click to add SpringBoot2 monitoring</li></ol><p>Path: Menu -&gt; Application Service Monitoring -&gt; SpringBoot2 -&gt; Add SpringBoot2 Monitoring</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-1-78e4eac4f6430c8747cc7297f87bcc08.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Configure the parameters required for new monitoring SpringBoot2</li></ol><p>Fill in the SpringBoot2 application <strong>peer IP</strong>, <strong>service port</strong> (default 8080), <strong>account password, etc.</strong> on the monitoring page, and finally click OK to add.
For other parameters such as <strong>collection interval</strong>, <strong>timeout period</strong>, etc., please refer to the help document <a href="https://hertzbeat.com/docs/help/" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/</a></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-2-fa4385fb54fb702a0d08163f4fbe198c.png" width="4064" height="2166" class="img_ev3q"></p><ol start="3"><li>Complete ✅, now we have added the monitoring of the SpringBoot2 application, check the monitoring list to see our additions.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-3-374e72a1a6cd9da11c7f4e04772484f1.png" width="4064" height="2166" class="img_ev3q"></p><ol start="4"><li>Click <strong>Operation</strong>-&gt;<strong>Monitoring Details Icon</strong> of the monitoring list item to browse the real-time monitoring metric data of the SpringBoot2 application.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-4-ac24d94ab16c267de2e8970f8854b5c9.png" width="4064" height="2166" class="img_ev3q"></p><ol start="5"><li>Click <strong>Monitoring History Details TAB</strong> to browse the historical monitoring metric data chart of the SpringBoot2 application📈.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-5-fcb5903d7a7d44d7ab9bcc1edd9add6e.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>DONE! Done! It doesn't require us to deploy agents or various cumbersome operations, isn't it very simple</strong></p><ul><li><strong>Just one step to configure the IP port on the HertzBeat monitoring page and add SpringBoot2 application monitoring</strong></li></ul><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>Through the above, we have completed the monitoring of the SpringBoot2 application. We can check the status and availability of various metrics of the SpringBoot2 application at any time in HertzBeat.<br>
<!-- -->Of course, it is impossible to manually check the metrics in real time. Monitoring is often accompanied by alarm thresholds. When the performance metrics of the SpringBoot2 application exceed our threshold or the SpringBoot2 application itself is abnormal, we can promptly notify our corresponding person in charge. The person in charge receives the notification and handles it. , this is a complete monitoring and alarm process.</p></div></div><p><strong>Next, we will demonstrate step by step how to configure the threshold alarm notification in the HertzBeat system. When the metrics of the SpringBoot2 application are abnormal, we will be notified in time</strong> </p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="3-add-springboot2-application-metric-threshold-alarm-in-hertzbeat-system">3. Add SpringBoot2 application metric threshold alarm in HertzBeat system<a href="#3-add-springboot2-application-metric-threshold-alarm-in-hertzbeat-system" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Configure an alarm threshold for an important metric</li></ol><p>Path: Menu -&gt; Threshold Rules -&gt; Add Threshold</p><ul><li>Select the configured metric object. SpringBoot2 application monitoring mainly focuses on stack memory threads and other related metrics. For example, we set the threshold for the metric <code>threads</code> -&gt; <code>threads</code>. When the number of threads in the <code>runnable</code> state is greater than At 300 an alert is issued.</li><li>Here we configure to send an alarm when <code>size</code>, <code>state</code> of <code>equals(state, "runnable"") &amp;&amp; size&gt;300</code> of this metric, the alarm level is <strong>warning alarm</strong>, which will be triggered three times, specifically As shown below.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-6-daaea06167a79dbf6bf73bd004c60c98.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-7-7a4ec6564ba9615353b68c19779752af.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Add message notification recipients</li></ol><blockquote><p>Configure the receiver to let the alarm message know who to send and how to send it.</p></blockquote><p>Path: Menu -&gt; Alarm Notification -&gt; Alarm Recipient -&gt; Add New Recipient</p><p>Message notification methods support <strong>email, DingTalk, WeChat Work, Feishu, WebHook, SMS</strong>, etc. Here we take the commonly used DingTalk as an example.</p><ul><li>Refer to this <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">Help Documentation</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> to configure the robot on DingTalk and set the security custom keyword <code>HertzBeat </code>, get the corresponding <code>access_token</code> value.</li><li>Configure the receiver parameters in HertzBeat as follows.</li></ul><p>【Alarm Notification】-&gt;【New Recipient】-&gt;【Select DingTalk Robot Notification Method】-&gt;【Set DingTalk Robot ACCESS_TOKEN】-&gt;【OK】</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"></p><ol start="3"><li>Configure the associated alarm notification strategy ⚠️ <!-- -->[Add notification strategy]<!-- --> -&gt; <!-- -->[Associate the recipient just set]<!-- --> -&gt; <!-- -->[OK]</li></ol><blockquote><p>Configure the alarm notification policy to bind the alarm message with the receiver, so that you can decide which alarms to send to whom.</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding">Finished, now wait for the warning message to come. ding ding ding ding<a href="#finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat warning notification]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm target object: springboot2.threads.size</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Affiliated monitoring ID: 483783444839322</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Belonging monitoring name: SPRINGBOOT2_localhost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm level: warning alarm</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm trigger time: 2023-03-22 21:13:44</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Content details: The springboot2 service's runnable state threads num is over 300, now is 444.</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>This practical article took us to experience how to use the open source real-time monitoring tool HertzBeat to monitor SpringBoot2 application metric data. We can find that HertzBeat, which integrates <code>monitoring-alarm-notification</code>, is more convenient in operation and use, just click a little on the page The SpringBoot2 application can be included in the monitoring and alarm notification, and the tedious operations of deploying multiple components and writing configuration files are no longer needed.</p></div></div><blockquote><p>Only one docker command is needed to install and experience heartbeat:</p></blockquote><p><code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="more-powerful">More powerful<a href="#more-powerful" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><blockquote><p>Through the simple steps above, we have realized the monitoring of SpringBoot2, but the built-in metrics in it do not meet the needs. Can we customize and monitor more metrics of SpringBoot2? The answer is of course yes, through <strong>Monitoring Definition</strong>-&gt;<strong>SpringBoot2</strong> on the page, you can customize and modify the performance metrics you want to monitor by editing the following YML configuration file at any time.</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-springboot2-8-ee4e189a96d0d0a81cf163a3b7b1902a.png" width="4064" height="2166" class="img_ev3q"></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an open source, real-time monitoring tool with custom-monitor and agentless.<br>
<strong>Monitor+Alerter+Notify</strong> all in one. Support monitoring web service, database, os, middleware, cloud-native, network and more.<br>
<!-- -->More flexible threshold rule(calculation expression), timely notification delivery by <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Email</code> <code>DingDing</code> <code>WeChat</code> <code>FeiShu</code> <code>Webhook</code> <code>SMS</code>.</p></blockquote><blockquote><p>We make protocols such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, and you only need to configure <code>YML</code> online to collect any metrics you want.<br>
<!-- -->Do you believe that you can immediately adapt a new monitoring type such as K8s or Docker just by configuring online?</p></blockquote><blockquote><p><code>HertzBeat</code>'s powerful custom-define, multi-type support, easy expansion, low coupling, hope to help developers and micro teams to quickly build their own monitoring system. </p></blockquote><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Open source real-time monitoring tool HertzBeat v1.3.0 released, online customization is coming]]></title>
<link>https://hertzbeat.apache.org/blog/2023/03/15/hertzbeat-v1.3.0</link>
<guid>https://hertzbeat.apache.org/blog/2023/03/15/hertzbeat-v1.3.0</guid>
<pubDate>Wed, 15 Mar 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Website: hertzbeat.com | tancloud.cn]]></description>
<content:encoded><![CDATA[<p>Website: hertzbeat.com | tancloud.cn</p><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/a9629ef5bb6e486cacddb899f1495c6e~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source real-time monitoring and alerting tool with powerful custom monitoring capabilities and no Agent required.<br>
<!-- -->It supports monitoring of application services, database, operating system, middleware, cloud native, network and other metrics, and threshold alert notification in one step.<br>
<!-- -->Support more liberal threshold rules (calculation expressions), <code>email</code> <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Pegging</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code> and other ways to timely delivery.</p></blockquote><blockquote><p>We have made the protocol specifications such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable so that you can simply configure <code>YML</code> to use these protocols to customize the collection of any metrics you want.</p></blockquote><blockquote><p>Do you believe that you can immediately adapt a new monitoring type such as K8s or Docker just by defining YML?</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/4236e748f5ac4352b7cf4bb65ccf97aa~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="v130-release-is-here">v1.3.0 release is here<a href="#v130-release-is-here" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>After a month of iterations, HertzBeat v1.3.0 was officially released last weekend, <strong>Recommended upgrade</strong>!</p><ul><li>Hertzbeat has powerful custom monitoring capabilities, all our supported monitoring types are mapped to a YML. This time we bring custom monitoring pagination, welcome to use and share your own monitoring type definition.</li></ul><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/b5c9dd3e28c54c72b49a7470012a0c36~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ul><li><p><strong>support for monitoring network switches</strong>.<br>
<!-- -->hertzbeat supported snmp protocol long time ago, windows monitoring is monitored by snmp protocol, this version we not only support more windows performance metrics, but also support snmp walk, adapt several common network switches monitoring, welcome to contribute more types and metrics to the community.</p></li><li><p><strong>Support for monitoring redis clusters and more database metrics</strong>.<br>
<!-- -->Community contributors have contributed extended metrics for redis clusters and multiple databases, enriching the performance metrics data.</p></li><li><p><strong>Support iotdb1.0 storage, dependency-free mode</strong><br>
<!-- -->and more new features welcome to explore</p></li><li><p>Fix several bugs, better documentation, refactored code.</p></li></ul><hr><p>Only one docker command is needed to install and experience heartbeat</p><p><code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Thanks to the hertzbeat contributors for their contributions! 👍👍👍</p><p>We are in desperate need of contributors for various aspects of test cases, new application monitoring, documentation, etc. Contributors are very welcome to join.</p><p>Upgrade note ⚠️.</p><p>For users who previously used iotdb or tdengine to store metrics data, you need to modify application.yml to disable JPA storage <code>warehouse.store.jpa.enabled</code> as follows:</p><p>Modify <code>application.yml</code> and set <code>warehouse.store.jpa.enabled</code> parameter to false </p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">warehouse:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> store:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> jpa:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> enabled: false</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Execute SQL script</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">ALTER table hzb_monitor modify job_id bigint default null;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">COMMIT;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Site Monitor, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap Full Site, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Damon, OpenGauss, ClickHouse, IoTDB, Redis Cluster</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ</li><li>Kubernetes, Docker</li><li>Huawei Switch, HPE Switch, TP-LINK Switch, Cisco Switch</li><li>and more for your custom monitoring.</li><li>Notifications support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>Pinning</code> <code>WeChat</code> <code>FlyBook</code> <code>SMS</code> <code>Webhook</code>.</li></ul><hr><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Monitoring Linux Operating Systems Using Open Source Real-Time Monitoring HertzBeat]]></title>
<link>https://hertzbeat.apache.org/blog/2023/02/15/monitor-linux</link>
<guid>https://hertzbeat.apache.org/blog/2023/02/15/monitor-linux</guid>
<pubDate>Wed, 15 Feb 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Use the open source real-time monitoring tool HertzBeat to monitor and alarm the Linux operating system, and it will be done in 5 minutes!]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="use-the-open-source-real-time-monitoring-tool-hertzbeat-to-monitor-and-alarm-the-linux-operating-system-and-it-will-be-done-in-5-minutes">Use the open source real-time monitoring tool HertzBeat to monitor and alarm the Linux operating system, and it will be done in 5 minutes!<a href="#use-the-open-source-real-time-monitoring-tool-hertzbeat-to-monitor-and-alarm-the-linux-operating-system-and-it-will-be-done-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="introduction-to-hertzbeat">Introduction to HertzBeat<a href="#introduction-to-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source, easy-to-use and friendly real-time monitoring tool that does not require Agent and has powerful custom monitoring capabilities.</p></blockquote><ul><li>Integrate <strong>monitoring-alarm-notification</strong>, support monitoring of application services, databases, operating systems, middleware, cloud native, etc., threshold alarms, alarm notifications (email WeChat Dingding Feishu SMS Slack Discord Telegram).</li><li>It configurable protocol specifications such as Http, Jmx, Ssh, Snmp, Jdbc, Prometheus, etc. You only need to configure YML to use these protocols to customize and collect any metrics you want to collect. Do you believe that you can immediately adapt to a new monitoring type such as K8s or Docker just by configuring YML?</li><li>HertzBeat's powerful customization, multi-type support, easy expansion, and low coupling, hope to help developers and small and medium teams quickly build their own monitoring tools.</li></ul><p>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="get-linux-monitoring-done-in-hertzbeat-in-5-minutes">Get Linux Monitoring Done in HertzBeat in 5 Minutes<a href="#get-linux-monitoring-done-in-hertzbeat-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="prerequisites-you-already-have-a-linux-environment-and-a-hertzbeat-environment">Prerequisites, you already have a Linux environment and a HertzBeat environment.<a href="#prerequisites-you-already-have-a-linux-environment-and-a-hertzbeat-environment" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Installation and deployment documentation</a></li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="add-monitoring-of-the-linux-operating-system-to-the-monitoring-page-of-the-open-source-monitoring-tool-hertzbeat">Add monitoring of the Linux operating system to the monitoring page of the open source monitoring tool HertzBeat<a href="#add-monitoring-of-the-linux-operating-system-to-the-monitoring-page-of-the-open-source-monitoring-tool-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click Add Linux Monitoring</li></ol><p>Path: Menu -&gt; Operating System Monitoring -&gt; Linux Operating System -&gt; Add Linux Operating System Monitoring</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-1-f5f2bd10b67c861ed02b71d6360f21e6.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Configure the parameters required for new monitoring Linux</li></ol><p>Fill in the Linux <strong>peer IP</strong>, <strong>SSH port</strong> (default 22), <strong>account password, etc.</strong> on the monitoring page, and finally click OK to add.
For other parameters such as <strong>collection interval</strong>, <strong>timeout period</strong>, etc., please refer to the help document <a href="https://hertzbeat.com/docs/help/mysql/" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/mysql/</a></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-2-07f1b6a0dec9524c6bb1c705ddfb90f3.png" width="4064" height="2166" class="img_ev3q"></p><ol start="3"><li>Complete ✅, now we have added the monitoring of Linux, check the monitoring list to see our added items.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-3-d7bf8ceaee68a94f7e436a0dcaf4c811.png" width="4064" height="2166" class="img_ev3q"></p><ol start="4"><li>Click <strong>Operation</strong>-&gt;<strong>Monitoring Details Icon</strong> of the monitoring list item to browse the real-time monitoring metric data of Linux.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-4-121d61bc7497e10352fe764f094a9398.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-7-436797db9ab725d6fd6c6f92878a64f2.png" width="4064" height="2166" class="img_ev3q"></p><ol start="5"><li>Click <strong>Monitoring History Details TAB</strong> to browse the historical monitoring metric data chart of Linux📈.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-5-4eb4e6eaec6a5d72b162d64ff7dd5456.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-6-758282e06b02fc2d96dca7521e42ccb2.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>DONE! Done! To sum up, it only takes one step</strong></p><ul><li><strong>On the HertzBeat monitoring page, configure the IP port account password and add Linux monitoring</strong></li></ul><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>Through the above two steps, we have completed the monitoring of Linux. We can view the monitoring details and metrics in HertzBeat at any time to observe its service status.
Of course, just looking at it is definitely not perfect. Monitoring is often accompanied by alarm thresholds. When Linux performance metrics exceed our expectations or are abnormal, we can promptly notify our corresponding person in charge. The person in charge receives the notification and handles the problem. It is a complete monitoring and alarm process.</p></div></div><p><strong>Next, we will demonstrate step by step how to configure threshold alarm notifications in the HertzBeat system, so that when Linux metrics are found to be abnormal, they will be notified to us in time</strong></p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="3-add-linux-metric-threshold-alarm-in-hertzbeat-system">3. Add Linux metric threshold alarm in HertzBeat system<a href="#3-add-linux-metric-threshold-alarm-in-hertzbeat-system" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Configure an alarm threshold for an important metric</li></ol><p>Path: Menu -&gt; Threshold Rules -&gt; Add Threshold</p><ul><li>Select the configured metric object. Linux monitors mainly related metrics such as cpu, memory, disk, network performance, etc. For example, we set the threshold for the metric <code>CPU utilization</code> <code>cpu</code> -&gt; <code>usage</code>. When the Linux cpu utilization is greater than 90% When a warning is issued.</li><li>Here we configure to send an alarm when the <code>usage&gt;90</code> of this metric <code>cpu</code>, the alarm level is <strong>Warning Alarm</strong>, which will be triggered after three times, as shown in the figure below.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-8-6aaf2f53362be98bcf58b187d70e2532.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-linux-9-1f7d0e58a752559ce186757607f289b8.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Add message notification recipients</li></ol><blockquote><p>Configure the receiver to let the alarm message know who to send and how to send it.</p></blockquote><p>Path: Menu -&gt; Alarm Notification -&gt; Alarm Recipient -&gt; Add New Recipient</p><p>Message notification methods support <strong>email, DingTalk, WeChat Work, Feishu, WebHook, SMS</strong>, etc. Here we take the commonly used DingTalk as an example.</p><ul><li>Refer to this <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">Help Documentation</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> to configure the robot on DingTalk and set the security custom keyword <code>HertzBeat </code>, get the corresponding <code>access_token</code> value.</li><li>Configure the receiver parameters in HertzBeat as follows.</li></ul><p>【Alarm Notification】-&gt;【New Recipient】-&gt;【Select DingTalk Robot Notification Method】-&gt;【Set DingTalk Robot ACCESS_TOKEN】-&gt;【OK】</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"></p><ol start="3"><li>Configure the associated alarm notification strategy ⚠️ <!-- -->[Add notification strategy]<!-- --> -&gt; <!-- -->[Associate the recipient just set]<!-- --> -&gt; <!-- -->[OK]</li></ol><blockquote><p>Configure the alarm notification policy to bind the alarm message with the receiver, so that you can decide which alarms to send to whom.</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding">Finished, now wait for the warning message to come. ding ding ding ding<a href="#finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat warning notification]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm target object: linux.cpu.usage</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Affiliated monitoring ID: 483783444839382</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Belonging monitoring name: Linux_182.33.34.2</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm level: warning alarm</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm trigger time: 2023-02-15 21:13:44</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Content details: The linux cpu usage is too high. now is 95.</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>This practical article took us to experience how to use the open source real-time monitoring tool HertzBeat to monitor Linux metric data. We can find that HertzBeat, which integrates <code>monitoring-alarm-notification</code>, is more convenient in operation and use. Linux can be included in the monitoring and alarm notification, and there is no need to deploy multiple components and write configuration files.</p></div></div><blockquote><p>Only one docker command is needed to install and experience heartbeat:</p></blockquote><p><code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertz-beat">What is Hertz Beat?<a href="#what-is-hertz-beat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat Hertz Beat</a> is a real-time monitoring and alarm system with powerful custom monitoring capabilities and no Agent required. Monitoring of application services, databases, operating systems, middleware, cloud native, etc., threshold alarms, and alarm notifications (email, WeChat, Dingding, Feishu, SMS, Discord, Slack, Telegram).</p></blockquote><blockquote><p>We make protocol specifications such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, and you only need to configure YML to use these protocols to customize and collect any metrics you want to collect.
Do you believe that you can immediately adapt to a new monitoring type such as K8s or Docker just by configuring YML?</p></blockquote><blockquote><p>The powerful customization of <code>HertzBeat</code>, multi-type support, easy expansion, and low coupling, hope to help developers and small and medium-sized teams quickly build their own monitoring tools.</p></blockquote><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Website Monitoring, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Dameng, OpenGauss, ClickHouse, IoTDB</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ
-Kubernetes, Docker</li><li>and more for your custom monitoring.</li><li>Notification support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>DingTalk</code> <code>WeChat</code> <code>Feishu</code> <code>SMS</code> <code>Webhook</code>.</li></ul>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Use the open source real-time monitoring tool HertzBeat to monitor and alert Mysql database]]></title>
<link>https://hertzbeat.apache.org/blog/2023/02/11/monitor-mysql</link>
<guid>https://hertzbeat.apache.org/blog/2023/02/11/monitor-mysql</guid>
<pubDate>Sat, 11 Feb 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Use the open source real-time monitoring tool HertzBeat to monitor and alarm the Mysql database, and it will be done in 5 minutes!]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="use-the-open-source-real-time-monitoring-tool-hertzbeat-to-monitor-and-alarm-the-mysql-database-and-it-will-be-done-in-5-minutes">Use the open source real-time monitoring tool HertzBeat to monitor and alarm the Mysql database, and it will be done in 5 minutes!<a href="#use-the-open-source-real-time-monitoring-tool-hertzbeat-to-monitor-and-alarm-the-mysql-database-and-it-will-be-done-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="mysql-database-introduction">Mysql database introduction<a href="#mysql-database-introduction" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>MySQL is an open source relational database management system developed by the Swedish company MySQL AB and a product of Oracle. MySQL is one of the most popular open source relational database management systems. In terms of WEB applications, MySQL is one of the best RDBMS (Relational Database Management System, relational database management system) application software.</p></blockquote><h3 class="anchor anchorWithStickyNavbar_LWe7" id="introduction-to-hertzbeat">Introduction to HertzBeat<a href="#introduction-to-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source, easy-to-use and friendly real-time monitoring tool that does not require Agent and has powerful custom monitoring capabilities.</p></blockquote><ul><li>Integrate <strong>monitoring-alarm-notification</strong>, support monitoring of application services, databases, operating systems, middleware, cloud native, etc., threshold alarms, alarm notifications (email WeChat Dingding Feishu SMS Slack Discord Telegram).</li><li>It configurable protocol specifications such as Http, Jmx, Ssh, Snmp, Jdbc, Prometheus, etc. You only need to configure YML to use these protocols to customize and collect any metrics you want to collect. Do you believe that you can immediately adapt to a new monitoring type such as K8s or Docker just by configuring YML?</li><li>HertzBeat's powerful customization, multi-type support, easy expansion, and low coupling, hope to help developers and small and medium teams quickly build their own monitoring tools.</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="get-the-mysql-database-monitoring-in-hertzbeat-in-5-minutes">Get the Mysql database monitoring in HertzBeat in 5 minutes<a href="#get-the-mysql-database-monitoring-in-hertzbeat-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="the-premise-of-the-operation-is-that-you-already-have-the-mysql-environment-and-the-hertzbeat-environment">The premise of the operation is that you already have the Mysql environment and the HertzBeat environment.<a href="#the-premise-of-the-operation-is-that-you-already-have-the-mysql-environment-and-the-hertzbeat-environment" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>Mysql <a href="https://www.runoob.com/mysql/mysql-install.html" target="_blank" rel="noopener noreferrer">Installation and deployment document</a></li><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Installation and deployment documentation</a></li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="add-monitoring-of-mysql-database-on-the-open-source-monitoring-tool-hertzbeat-monitoring-page">Add monitoring of Mysql database on the open source monitoring tool HertzBeat monitoring page<a href="#add-monitoring-of-mysql-database-on-the-open-source-monitoring-tool-hertzbeat-monitoring-page" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click Add Mysql Monitoring</li></ol><p>Path: Menu -&gt; Database Monitoring -&gt; Mysql Database -&gt; Add Mysql Database Monitoring</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-1-19e6ec4459f0d9e919f6a6c30be7b57a.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Configure the parameters required for the new monitoring Mysql database</li></ol><p>On the monitoring page, fill in Mysql <strong>service IP</strong>, <strong>monitoring port</strong> (default 3306), <strong>account password, etc.</strong>, and finally click OK to add.
For other parameters such as <strong>collection interval</strong>, <strong>timeout period</strong>, etc., please refer to <a href="https://hertzbeat.com/docs/help/mysql/" target="_blank" rel="noopener noreferrer">Help Documentation</a> <a href="https://hertzbeat.com/docs/help" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help</a> /mysql/</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-2-13a14e1ef2e6ce1aad18487061354b44.png" width="4064" height="2166" class="img_ev3q"></p><ol start="3"><li>Complete ✅, now we have added the monitoring of the Mysql database, check the monitoring list to see our added items.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-1-19e6ec4459f0d9e919f6a6c30be7b57a.png" width="4064" height="2166" class="img_ev3q"></p><ol start="4"><li>Click <strong>Operation</strong>-&gt;<strong>Monitoring Details Icon</strong> of the monitoring list item to browse the real-time monitoring metric data of the Mysql database.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-3-d6896c6d4ffd9c2b6e947b2953e784f1.png" width="4064" height="2166" class="img_ev3q"></p><ol start="5"><li>Click <strong>Monitoring History Details TAB</strong> to browse the historical monitoring metric data chart of Mysql database📈.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-4-3283b82611bd5f8e97a5ee6c58b2258c.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>DONE! Done! Through the above steps, in fact, it only takes one step to sum up</strong></p><ul><li><strong>On the HertzBeat monitoring page, configure the IP port account password and add Mysql monitoring</strong></li></ul><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>Through the above two steps, we have completed the monitoring of the Mysql database. We can view the monitoring details and metrics in HertzBeat at any time to observe its service status.
Of course, just looking at it is definitely not perfect. Monitoring is often accompanied by alarm thresholds. When the metrics of the Mysql database exceed our expectations or are abnormal, we can promptly notify our corresponding person in charge. The person in charge receives the notification and handles the problem. It is a complete monitoring and alarm process.</p></div></div><p><strong>Next, we will demonstrate step by step how to configure the threshold alarm notification in the HertzBeat system, so that when the metrics of the Mysql database are found to be abnormal, they will be notified to us in time</strong></p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="3-add-mysql-database-index-threshold-alarm-in-hertzbeat-system">3. Add Mysql database index threshold alarm in HertzBeat system<a href="#3-add-mysql-database-index-threshold-alarm-in-hertzbeat-system" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Configure an alarm threshold for an important metric</li></ol><p>Path: Menu -&gt; Threshold Rules -&gt; Add Threshold</p><ul><li>Select the configured metric object. Mysql database monitoring is mainly about database performance and other related metrics. For example, we set the threshold for the metric <code>query cache hit rate</code> <code>cache</code> -&gt; <code>query_cache_hit_rate</code>. When the query cache hit rate of Mysql is very low An alarm is issued when it is less than 30%.</li><li>Here we configure to send an alarm when the <code>query_cache_hit_rate&lt;30</code> of this metric <code>cache</code>, the alarm level is <strong>serious alarm</strong>, and it will be triggered after three times, as shown in the figure below.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-5-de9e52572120721588e3ec4207999d97.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-mysql-6-734d367e3a2cd939c75d3ea9204bd615.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Add message notification recipients</li></ol><blockquote><p>Configure the receiver to let the alarm message know who to send and how to send it.</p></blockquote><p>Path: Menu -&gt; Alarm Notification -&gt; Alarm Recipient -&gt; Add New Recipient</p><p>Message notification methods support <strong>email, DingTalk, WeChat Work, Feishu, WebHook, SMS</strong>, etc. Here we take the commonly used DingTalk as an example.</p><ul><li>Refer to this <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">Help Documentation</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> to configure the robot on DingTalk and set the security custom keyword <code>HertzBeat </code>, get the corresponding <code>access_token</code> value. </li><li>Configure the receiver parameters in HertzBeat as follows.</li></ul><p>【Alarm Notification】-&gt;【New Recipient】-&gt;【Select DingTalk Robot Notification Method】-&gt;【Set DingTalk Robot ACCESS_TOKEN】-&gt;【OK】</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"></p><ol start="3"><li>Configure the associated alarm notification strategy ⚠️ <!-- -->[Add notification strategy]<!-- --> -&gt; <!-- -->[Associate the recipient just set]<!-- --> -&gt; <!-- -->[OK]</li></ol><blockquote><p>Configure the alarm notification policy to bind the alarm message with the receiver, so that you can decide which alarms to send to whom.</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding">Finished, now wait for the warning message to come. ding ding ding ding<a href="#finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat warning notification]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm target object: mysql.cahce.query_cache_hit_rate</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Affiliated monitoring ID: 205540620394932</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Belonging monitoring name: Mysql_localhost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm level: major alarm</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm trigger time: 2023-02-11 21:13:44</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Content details: mysql db query_cache_hit_rate is too low, now is 20.</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>This practical article took us to experience how to use the open source real-time monitoring tool HertzBeat to monitor Mysql database metric data. We can find that HertzBeat, which integrates <code>monitoring-alarm-notification</code>, is more convenient in operation and use, just click on the page The Mysql database can be included in the monitoring and alarm notification, and the tedious operations of deploying multiple components and writing configuration files are no longer needed.</p></div></div><p>Mysql Github: <a href="https://github.com/mysql/mysql-server" target="_blank" rel="noopener noreferrer">https://github.com/mysql/mysql-server</a><br>
<!-- -->HertzBeat Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><p><strong>Welcome to learn, use and star! </strong> </p><blockquote><p>Only one docker command is needed to install and experience heartbeat:</p></blockquote><p><code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Welcome two new Committers from HertzBeat]]></title>
<link>https://hertzbeat.apache.org/blog/2023/02/10/new-committer</link>
<guid>https://hertzbeat.apache.org/blog/2023/02/10/new-committer</guid>
<pubDate>Fri, 10 Feb 2023 00:00:00 GMT</pubDate>
<description><![CDATA[hertzBeat]]></description>
<content:encoded><![CDATA[<p><img loading="lazy" alt="hertzBeat" src="/assets/images/new-committer-f8ad9cf268df899234aaeaef8541e294.png" width="1920" height="600" class="img_ev3q"></p><h1>Welcome two new Committers from HertzBeat</h1><blockquote><p>I am very happy that the Dromara HertzBeat open source community has welcomed two new community Committers, one is the leader of the R&amp;D team from the front line, and the other is an intern from a large factory. Let us learn about their open source experience!</p></blockquote><h2 class="anchor anchorWithStickyNavbar_LWe7" id="the-first-attacking-ah-chen">The first attacking Ah Chen<a href="#the-first-attacking-ah-chen" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Name: Gao Chen</p><p>Now engaged in: Fanruan software Java research and development</p><p>Hertzbeat Committer</p><p>github: gcdd1993 (A Chen who attacked)</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="getting-to-know-hertzbeat">Getting to know Hertzbeat<a href="#getting-to-know-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>I started to contact Hertzbeat in April 2022. At that time, the company had a downtime accident, and the website could not be accessed.
I didn’t know until the user feedback. I urgently need a monitoring platform that can monitor the online rate of the website and give timely alarms.
After browsing several monitoring platforms, I finally settled on Hertzbeat, because it has powerful functions, meets the needs and has some surprises.
The most important thing is the code specification, clear comments, and consistent technology stack, which is convenient for the secondary development of enterprises.
Combined with powerful custom notifications, we have monitored databases, middleware, and websites, which have played a vital role in the stable operation of the company's platform.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="start-submitting-prs">Start submitting PRs<a href="#start-submitting-prs" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>The first PR was submitted on April 17, 2022, mainly for the problem of TDEngine time zone error found during the use process. Although it was a simple configuration modification, it also let me know more about HertzBeat, and with the in-depth understanding of the source code, learned a lot.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="continuous-open-source-contribution-and-harvest">Continuous open source contribution and harvest<a href="#continuous-open-source-contribution-and-harvest" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>So far, I have participated in the hertzbeat open source project for more than half a year, contributed a lot, and grown and gained a lot. details as follows:</p><ul><li>Refactored the alarm module based on the strategy mode </li><li>Implemented metric monitoring for <code>Redis</code> database </li><li>Optimize <code>spring.factories</code> configuration items </li><li>Implemented message notification channels supporting <code>Telegram</code>, <code>Discord</code>, <code>Slack</code> </li><li>Use <code>Thymeleaf</code> to restructure the alarm text, and the alarm notification template is more standardized </li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="thank-you-community-friends">Thank you community friends<a href="#thank-you-community-friends" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Thanks to the friends who have helped me or inspired me for free: tomsun28, for every problem encountered during the contribution process, they can patiently guide.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="advice-for-newcomers">Advice for newcomers<a href="#advice-for-newcomers" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><ul><li>HertzBeat's source code is very friendly to novices, with standardized code and rich comments, which is very suitable as a learning project. </li><li>Open source contribution is not achieved overnight, every idea, every question/answer is a contribution, the first step is the most important! </li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="next--armored-little-treasure">Next 🌻 Armored Little Treasure<a href="#next--armored-little-treasure" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Name: happy deposit</p><p>Currently engaged: Junior student of Henan Normal University, internship at Alibaba</p><p>Hertz Beat Committer</p><p>github: TJxiaobao</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="-meet-hertzbeat-for-the-first-time">🌻 Meet hertzbeat for the first time<a href="#-meet-hertzbeat-for-the-first-time" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>First of all, I would like to thank Brother Huacheng here, because I wanted to learn some excellent <code>Java</code> projects at that time. Then, during the meal, I asked my brother if there was any good project recommendation. At this time, my brother recommended me to Brother Tom. When I personally used <code>hertzbeat</code>, I really discovered a new continent. Compared with the simple <code>Java</code> project I was exposed to before, I was deeply impressed by the architecture design of <code>hertzbeat</code> and its practical functions. me. At this time, a seed of "wanting to contribute my own strength" has been planted in my heart.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="-start-submitting-pr">🌻 Start submitting PR<a href="#-start-submitting-pr" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>On Oct 20, 2022, I submitted <code>PR</code> for the first time. Although this <code>PR</code> is a simple translation comment, it seems that the technical content is not very high.
But he can also make me familiar with the business logic and architecture design of the project faster, and can lay a solid foundation for future contributions.
And this <code>PR</code> is also my first step towards open source, and it is also the starting point for me to fall in love with open source!</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="-continuous-open-source-contribution-and-harvest">🌻 Continuous open source contribution and harvest<a href="#-continuous-open-source-contribution-and-harvest" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>From the first <code>PR</code> to the present, I have participated in the <code>hertzbeat</code> open source project for a while, and I have also contributed a small part, and I have grown and gained a lot. details as follows.</p><p><strong>contribute:</strong></p><ul><li><ol><li>Realize the monitoring of docker containers. </li></ol></li><li><ol start="2"><li>Complete the domestic database DM monitoring </li></ol></li><li><ol start="3"><li>Write a single test for the corresponding business. </li></ol></li><li><ol start="4"><li>English translation of some annotations. </li></ol></li></ul><p><strong>reward:</strong></p><ul><li><ol><li>The technical ability has been further improved.</li></ol></li><li><ol start="2"><li>Broaden your horizons.</li></ol></li><li><ol start="3"><li>Learned a lot from the bosses.</li></ol></li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="-thanks-to-the-community-partners">🌻 Thanks to the community partners<a href="#-thanks-to-the-community-partners" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Thanks to the friends who have helped me or inspired me for free (in no particular order): tomsun28 (brother tom), Huacheng (brother)</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="-a-little-advice-for-newcomers">🌻 A little advice for newcomers<a href="#-a-little-advice-for-newcomers" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>First of all, I am also a newcomer to Novice Village, but I can share some of my experience with you, hoping to help you.</p><ul><li><ol><li>Don't be too impatient, and calm down to understand the general implementation logic of each module. </li></ol></li><li><ol start="2"><li>Use different functions and debug to see the underlying implementation principle of each function. </li></ol></li><li><ol start="3"><li>Slowly try to read the source code and understand it. </li></ol></li><li><ol start="4"><li>If you encounter a bug, you can directly report it to issues, or you can try to solve it yourself. </li></ol></li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertz-beat">What is Hertz Beat?<a href="#what-is-hertz-beat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat Hertz Beat</a> is a real-time monitoring and alarm system with powerful custom monitoring capabilities and no Agent required. Monitoring of application services, databases, operating systems, middleware, cloud native, etc., threshold alarms, and alarm notifications (email, WeChat, Dingding, Feishu, SMS, Discord, Slack, Telegram).</p></blockquote><blockquote><p>We make protocol specifications such as <code>Http, Jmx, Ssh, Snmp, Jdbc, Prometheus</code> configurable, and you only need to configure YML to use these protocols to customize and collect any metrics you want to collect.<br>
<!-- -->Do you believe that you can immediately adapt to a new monitoring type such as K8s or Docker just by configuring YML?</p></blockquote><blockquote><p>The powerful customization of <code>HertzBeat</code>, multi-type support, easy expansion, and low coupling, hope to help developers and small and medium-sized teams quickly build their own monitoring tools.</p></blockquote><p><strong>Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong><br>
<strong>Gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong> </p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-supported">⛄ Supported<a href="#-supported" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>Website Monitoring, Port Availability, Http Api, Ping Connectivity, Jvm, SiteMap, Ssl Certificate, SpringBoot, FTP Server</li><li>Mysql, PostgreSQL, MariaDB, Redis, ElasticSearch, SqlServer, Oracle, MongoDB, Dameng, OpenGauss, ClickHouse, IoTDB</li><li>Linux, Ubuntu, CentOS, Windows</li><li>Tomcat, Nacos, Zookeeper, RabbitMQ, Flink, Kafka, ShenYu, DynamicTp, Jetty, ActiveMQ
-Kubernetes, Docker</li><li>and more for your custom monitoring.</li><li>Notification support <code>Discord</code> <code>Slack</code> <code>Telegram</code> <code>Mail</code> <code>DingTalk</code> <code>WeChat</code> <code>Feishu</code> <code>SMS</code> <code>Webhook</code>.</li></ul>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[Monitoring Practices for DynamicTp Thread Pooling Framework with HertzBeat]]></title>
<link>https://hertzbeat.apache.org/blog/2023/02/02/monitor-dynamic-tp</link>
<guid>https://hertzbeat.apache.org/blog/2023/02/02/monitor-dynamic-tp</guid>
<pubDate>Thu, 02 Feb 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Monitoring practice for thread pooling framework DynamicTp using HertzBeat, 5 minutes!]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="monitoring-practice-for-thread-pooling-framework-dynamictp-using-hertzbeat-5-minutes">Monitoring practice for thread pooling framework DynamicTp using HertzBeat, 5 minutes!<a href="#monitoring-practice-for-thread-pooling-framework-dynamictp-using-hertzbeat-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="introducing-dynamictp-the-thread-pooling-framework">Introducing DynamicTp, the thread pooling framework.<a href="#introducing-dynamictp-the-thread-pooling-framework" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>DynamicTp is a lightweight configuration-centric dynamic thread pool in Jvm with built-in monitoring and alerting capabilities, which can be customized through SPI extensions.</p></blockquote><ul><li>Support for dynamic modification of the running thread pool parameters , real-time effective .</li><li>Real-time monitoring of the running status of the thread pool, alarms are triggered when the alarm policy is set, and alarm information is pushed to the office platform.</li><li>Collect thread pool metrics data regularly, and use grafana as a visual monitoring platform to monitor the overall situation.</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeat-introduction">HertzBeat Introduction<a href="#hertzbeat-introduction" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source, easy-to-use and friendly real-time monitoring tool with powerful customizable monitoring capabilities.</p></blockquote><ul><li>Support for application services , database , operating system , middleware , cloud native monitoring , threshold alarms , alarm notification (email WeChat Dingtalk SMS Slack Discord Telegram).</li><li>Its Http, Jmx, Ssh, Snmp, Jdbc, Prometheus and other protocol specifications configurable, just configure YML can use these protocols to customize the collection of any metrics you want to collect. Would you believe that you can instantly adapt a new monitoring type such as K8s or Docker by simply configuring YML?</li><li>HertzBeat's powerful customization, multi-type support, easy scalability, and low coupling will hopefully help developers and small to medium sized teams to quickly build their own monitoring systems.</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="monitor-dynamictp-in-5-minutes-at-hertzbeat">Monitor DynamicTp in 5 minutes at HertzBeat!<a href="#monitor-dynamictp-in-5-minutes-at-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="operation-you-already-have-a-dynamictp-environment-and-a-hertzbeat-environment">operation, you already have a DynamicTp environment and a HertzBeat environment.<a href="#operation-you-already-have-a-dynamictp-environment-and-a-hertzbeat-environment" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>DynamicTp <a href="https://dynamictp.cn/guide/use/quick-start.html" target="_blank" rel="noopener noreferrer">Integration Access Documentation</a></li><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Deployment and Installation Documentation</a></li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="i-expose-the-dynamictp-metrics-interface-actuatordynamic-tp-on-the-dynamictp-side-which-will-provide-the-metrics-interface-data">i. Expose the <code>DynamicTp</code> metrics interface <code>/actuator/dynamic-tp</code> on the DynamicTp side, which will provide the metrics interface data.<a href="#i-expose-the-dynamictp-metrics-interface-actuatordynamic-tp-on-the-dynamictp-side-which-will-provide-the-metrics-interface-data" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Enable the SpringBoot Actuator Endpoint to expose the <code>DynamicTp</code> metrics interface.</li></ol><div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token key atrule" style="color:#00a4db">management</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">endpoints</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">web</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">exposure</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">include</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'*'</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="2"><li>Reboot and test access to the metrics interface <code>ip:port/actuator/dynamic-tp</code> to see if it responds with json data as follows.</li></ol><div class="language-json codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-json codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token punctuation" style="color:#393A34">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"poolName"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"commonExecutor"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"corePoolSize"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"maximumPoolSize"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"queueType"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"LinkedBlockingQueue"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"queueCapacity"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">2147483647</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"queueSize"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"fair"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">false</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"queueRemainingCapacity"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">2147483647</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"activeCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"taskCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"completedTaskCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"largestPoolSize"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"poolSize"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"waitTaskCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"rejectCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"rejectHandlerName"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token null keyword" style="color:#00009f">null</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"dynamic"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">false</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"runTimeoutCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"queueTimeoutCount"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"maxMemory"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"4 GB"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"totalMemory"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"444 MB"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"freeMemory"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"250.34 MB"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token property" style="color:#36acaa">"usableMemory"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"3.81 GB"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">]</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h4 class="anchor anchorWithStickyNavbar_LWe7" id="ii-to-add-dynamictp-thread-pool-monitoring-to-the-hertzbeat-monitoring-page">ii. To add DynamicTp thread pool monitoring to the HertzBeat monitoring page<a href="#ii-to-add-dynamictp-thread-pool-monitoring-to-the-hertzbeat-monitoring-page" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click Add DynamicTp Monitor</li></ol><p>Path: Menu -&gt; Middleware Monitor -&gt; DynamicTp Monitor -&gt; Add DynamicTp Monitor</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-1-6ad397a5d82658fbbf9c056dc56b5b15.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Configure the parameters required for monitoring DynamicTp.</li></ol><p>On the monitor page, fill in DynamicTp <strong>service IP</strong>, <strong>monitoring port</strong> (default 8080), and finally click OK to add it.<br>
<!-- -->For other parameters such as <strong>collection interval</strong>, <strong>timeout</strong>, etc., you can refer to <a href="https://hertzbeat.com/docs/help/dynamic_tp/" target="_blank" rel="noopener noreferrer">help</a> <a href="https://hertzbeat.com/docs/help/dynamic_tp/" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/dynamic_tp/</a></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-2-38cd35a16117ade74a8affe63687937d.png" width="4064" height="2166" class="img_ev3q"></p><ol start="3"><li>Done ✅, now we have added monitoring for DynamicTp, check the monitor list to see our additions.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-1-6ad397a5d82658fbbf9c056dc56b5b15.png" width="4064" height="2166" class="img_ev3q"></p><ol start="4"><li>Click <strong>Options</strong>-&gt;<strong>Monitor Details icon</strong> in the Monitor list to view the real-time monitoring metrics of the DynamicTp thread pool.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-3-6ad397a5d82658fbbf9c056dc56b5b15.png" width="4064" height="2166" class="img_ev3q"></p><ol start="5"><li>Click the <strong>Monitoring History TAB</strong> to view a graphical representation of the historical monitoring metrics for the DynamicTp thread pool 📈.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-4-8d87c11732531f2694e6a5dcbe7459c4.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-5-57b7a2e873324a86a5f79bbd64de1c10.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>DONE! With the above steps, it's really just two steps</strong></p><ul><li><strong>The first step is to expose the DynamicTp <code>metrics</code> endpoint <code>/actuator/dynamic-tp</code></strong>.</li><li><strong>The second step is to configure the IP ports on the HertzBeat monitoring page to add the monitoring</strong></li></ul><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>With the above two steps we have finished monitoring DynamicTp, and we can view the monitoring details and metrics information in HertzBeat at any time to observe its service status.
Of course, just watching is not perfect, monitoring is often accompanied by alarm thresholds, when DynamicTp's thread pool metrics exceed our expectations or abnormalities, we can promptly notify the person in charge of our counterparts, the person in charge of the notification received to deal with the problem, so that is a complete monitoring and alerting process.</p></div></div><p><strong>Next, we will demonstrate step-by-step how to configure the threshold alarm notification in HertzBeat system, so that when the DynamicTp thread pool metrics are abnormal, we will be notified in a timely manner</strong> **This is a complete monitoring and alerting process.</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="iii-adding-threshold-alerts-for-dynamictp-thread-pool-metrics-in-hertzbeat-system">iii. Adding Threshold Alerts for DynamicTp Thread Pool Metrics in HertzBeat System<a href="#iii-adding-threshold-alerts-for-dynamictp-thread-pool-metrics-in-hertzbeat-system" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Configure an alarm threshold for an important metric.</li></ol><p>Path: Menu -&gt; Alert Thresholds -&gt; Add Thresholds</p><ul><li>DynamicTp monitors some thread pool related metrics, for example, we set the threshold for the <code>run_timeout_count</code> <code>thread_pool_running</code> -&gt; <code>run_timeout_count</code> metric, which will raise an alarm when the thread_timeout_count is greater than one.</li><li>Here we configure an alert to be issued when <code>thread_pool_running</code> has a <code>run_timeout_count&gt;1</code>, with an alert level of <strong>Serious Alert</strong>, which is triggered three times, as shown in the following figure.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-dynamic-tp-6-cf05bdeb04ce4aa2c627c350c9c54aeb.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Add message notification recipients</li></ol><blockquote><p>Configure recipients to let alert message know who to send to and in what way.</p></blockquote><p>Path: Menu -&gt; Alert Notification -&gt; Alert Recipient -&gt; Add Recipient.</p><p>Message notification methods support <strong>Email, Dingtalk, WeChat, Flybook, WebHook, SMS</strong>, etc. We take the commonly used Dingtalk as an example.</p><ul><li>Refer to this <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">help document</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> Configure the bot on Dingtalk side, set the security customization keyword <code> HertzBeat</code>, get the corresponding <code>access_token</code> value.</li><li>Configure the recipient parameters in HertzBeat as follows.</li></ul><p>[Alert Notification]<!-- --> -&gt; <!-- -->[Add Recipient]<!-- --> -&gt; <!-- -->[Choose Dingtalk bot notification method]<!-- --> -&gt; <!-- -->[Set Dingtalk bot ACCESS_TOKEN]<!-- --> -&gt; <!-- -->[OK]</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"></p><ol start="3"><li>Configure the associated alert notification policy ⚠️ <!-- -->[Add Notification Policy]<!-- --> -&gt; <!-- -->[Associate the recipient you just set]<!-- --> -&gt; <!-- -->[OK]<!-- --> !</li></ol><blockquote><p>Configure the alert notification policy to bind alert messages to recipients so that you can decide which alerts go to which person.</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="over-and-out-now-wait-for-the-alert-message-to-come-through-ding-ding-ding-ding">Over and out, now wait for the alert message to come through. Ding, ding, ding, ding.<a href="#over-and-out-now-wait-for-the-alert-message-to-come-through-ding-ding-ding-ding" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat alert notification]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alert target object : dynamic_tp.thread_pool_running.run_timeout_count</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Task ID : 205540620349493</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Task Name : dynamic_tp_localhost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm Level : Critical Alarm</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm Trigger Time : 2023-02-02 22:17:06</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Details : DynamicTp has run timeout thread, count is 2</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>This practical article takes us to experience how to use HertzBeat to monitor DynamicTp thread pool metrics data, and we can find that HertzBeat with <code>monitoring-alerting-notification</code> is much more convenient to operate and use, and you only need to point and click on a page to include DynamicTp thread pool into the monitoring and alert notification, and you don't need to deploy multiple components to write YML configuration files anymore. There is no need to deploy multiple components and write YML configuration files. </p></div></div><p>DynamicTp Github: <a href="https://github.com/dromara/dynamic-tp" target="_blank" rel="noopener noreferrer">https://github.com/dromara/dynamic-tp</a><br>
<!-- -->HertzBeat Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><p><strong>Welcome to learn how to use Star Support!</strong></p><p>Experience heartbeat with a single docker command:<br>
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[HertzBeat's Monitoring Practice for API Gateway Apache ShenYu]]></title>
<link>https://hertzbeat.apache.org/blog/2023/01/08/monitor-shenyu</link>
<guid>https://hertzbeat.apache.org/blog/2023/01/08/monitor-shenyu</guid>
<pubDate>Sun, 08 Jan 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Monitoring practice for API gateway Apache ShenYu using HertzBeat, 5 minutes!]]></description>
<content:encoded><![CDATA[<h3 class="anchor anchorWithStickyNavbar_LWe7" id="monitoring-practice-for-api-gateway-apache-shenyu-using-hertzbeat-5-minutes">Monitoring practice for API gateway Apache ShenYu using HertzBeat, 5 minutes!<a href="#monitoring-practice-for-api-gateway-apache-shenyu-using-hertzbeat-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h3 class="anchor anchorWithStickyNavbar_LWe7" id="introduction-to-apache-shenyu">Introduction to Apache ShenYu<a href="#introduction-to-apache-shenyu" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Apache ShenYu is an asynchronous, high-performance, cross-language, responsive API gateway.</p></blockquote><ul><li>Proxy: supports Apache Dubbo, Spring Cloud, gRPC, Motan, SOFA, TARS, WebSocket, MQTT.</li><li>Security: Signature, OAuth 2.0, JSON Web Token, WAF Plugin</li><li>API Governance: Request, Response, Parameter Mapping, Hystrix, RateLimiter Plugin</li><li>Observability: tracing, metrics, logging plug-ins</li><li>Dashboard: dynamic flow control, visual backend for user menu permissions</li><li>Extension: plugin hot-plugging, dynamic loading</li><li>Clustering: NGINX, Docker, Kubernetes</li><li>Languages: .NET, Python, Go, Java clients available for API registration</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeat-introduction">HertzBeat Introduction<a href="#hertzbeat-introduction" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source, easy to use and friendly real-time monitoring tool, no Agent, with powerful custom monitoring capabilities.<br>
<!-- -->Support for application services, database, operating system, middleware, cloud native monitoring, threshold alarms, alarm notification (email WeChat Nail Flybook).<br>
<!-- -->HertzBeat's powerful customization, multi-type support, easy to extend, low-coupling, hope to help developers and small and medium-sized teams to quickly build their own monitoring system.</p></blockquote><h3 class="anchor anchorWithStickyNavbar_LWe7" id="monitor-apache-shenyu-in-hertzbeat-in-5-minutes">Monitor Apache ShenYu in HertzBeat in 5 minutes!<a href="#monitor-apache-shenyu-in-hertzbeat-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="you-must-have-a-shenyu-environment-and-a-hertzbeat-environment">You must have a ShenYu environment and a HertzBeat environment.<a href="#you-must-have-a-shenyu-environment-and-a-hertzbeat-environment" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>ShenYu <a href="https://shenyu.apache.org/zh/docs/deployment/deployment-before" target="_blank" rel="noopener noreferrer">Deployment and Installation Documentation</a></li><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">Deployment and Installation Documentation</a></li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="i-enable-the-metrics-plugin-on-the-shenyu-side-which-will-provide-the-metrics-interface-data">i. Enable the <code>metrics</code> plugin on the ShenYu side, which will provide the metrics interface data.<a href="#i-enable-the-metrics-plugin-on-the-shenyu-side-which-will-provide-the-metrics-interface-data" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><blockquote><p>The plugin is the core implementer of the Apache ShenYu gateway, and metrics data collection is also integrated at <code>ShenYu</code> in the form of a plugin - <code>Metrics Plugin</code>.<br>
<!-- -->The <code>Metrics plugin</code> is used by the gateway to monitor its own operational status (<code>JVM</code> related), request responses and other related metrics.</p></blockquote><ol><li>Add the <code>metrics plugin</code> dependency to the <code>pom.xml</code> file of the gateway.</li></ol><div class="language-xml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-xml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">dependency</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">groupId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain">org.apache.shenyu</span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">groupId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">artifactId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain">shenyu-spring-boot-starter-plugin-metrics</span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">artifactId</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;</span><span class="token tag" style="color:#00009f">version</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain">${project.version}</span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">version</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34">&lt;/</span><span class="token tag" style="color:#00009f">dependency</span><span class="token tag punctuation" style="color:#393A34">&gt;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="2"><li><code>metric</code> plugin Capture is turned off by default, edit the following in the gateway's configuration <code>yaml</code> file:</li></ol><div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token key atrule" style="color:#00a4db">shenyu</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">metrics</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">enabled</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">true</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#Set to true to enable</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">name</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> prometheus </span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">host</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> 127.0.0.1 </span><span class="token comment" style="color:#999988;font-style:italic">#exposed ip</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">port</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">8090</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#Exposed port</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">jmxConfig</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#jmx configuration</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">props</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#jvm_enabled: true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">jvm_enabled</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">true</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#Enable monitoring metrics for jvm</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="3"><li>Restart ShenYu Gateway, open a browser or use curl to access <code>http://ip:8090</code>, you can see the metric data.</li></ol><h4 class="anchor anchorWithStickyNavbar_LWe7" id="ii-adding-shenyu-monitor-in-hertzbeat-monitor-page">ii. Adding ShenYu Monitor in HertzBeat Monitor Page<a href="#ii-adding-shenyu-monitor-in-hertzbeat-monitor-page" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click Add ShenYu Monitor</li></ol><p>Path: Menu -&gt; Middleware Monitor -&gt; ShenYu Monitor -&gt; Add ShenYu Monitor</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-1-9b12c5875c4c6bb3863f7e4efacb0ab6.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Configure the parameters required for monitoring ShenYu</li></ol><p>On the monitor page, fill in ShenYu <strong>service IP</strong>, <strong>monitor port</strong> (default 8090), and click OK to add.<br>
<!-- -->For other parameters such as <strong>collection interval</strong>, <strong>timeout</strong>, etc., you can refer to the <a href="https://hertzbeat.com/docs/help/shenyu/" target="_blank" rel="noopener noreferrer">help file</a> <a href="https://hertzbeat.com/docs/help/shenyu/" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/shenyu/</a></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-1-9b12c5875c4c6bb3863f7e4efacb0ab6.png" width="4064" height="2166" class="img_ev3q"></p><ol start="3"><li>Done ✅, now we have added monitoring for ShenYu, check the monitor list to see our additions.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-3-f0835dba46e9e644bbad609fea757d2d.png" width="4064" height="2166" class="img_ev3q"></p><ol start="4"><li>Click <strong>Options</strong>-&gt;<strong>Monitoring Details icon</strong> in the monitor list to view ShenYu's real-time monitoring metrics.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-4-0300bcf78c5e2f606ab780bec8a31757.png" width="4064" height="2166" class="img_ev3q"></p><ol start="5"><li>Click the <strong>Monitor History TAB</strong> to view ShenYu's historical monitoring metrics graphs 📈.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-5-959d049b8246df725b9a7ebfb993ae71.png" width="4064" height="2166" class="img_ev3q"></p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-6-78533ff8941232b1be80110474edfe17.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>DONE! With the above steps, it's really only two steps</strong></p><ul><li><strong>The first step is to enable the <code>metrics</code> plugin on the ShenYu side</strong>.</li><li>**The second step is to configure the IP ports on the HertzBeat monitoring page to add monitoring</li></ul><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>By the above two steps we have finished monitoring Apache ShenYu, we can check the monitoring details and metrics information in HertzBeat anytime to observe its service status.
Of course, just looking at it is not perfect, monitoring is often accompanied by alarm thresholds, when some of ShenYu's indicators exceed our expectations or abnormalities, we can promptly notify the person in charge of our counterparts, the person in charge of the notification to deal with the problem, so that is a complete monitoring and alerting process.</p></div></div><p><strong>Next we will demonstrate step by step how to configure the threshold alarm notification in HertzBeat system, so that when ShenYu's metrics are abnormal, we will be notified in a timely manner</strong> **This is a complete monitoring and alerting process.</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="iii-adding-shenyu-metrics-threshold-alerts-to-the-hertzbeat-system">III. Adding ShenYu Metrics Threshold Alerts to the HertzBeat System<a href="#iii-adding-shenyu-metrics-threshold-alerts-to-the-hertzbeat-system" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Configure an alarm threshold for an important metric.</li></ol><p>Path: Menu -&gt; Alert Thresholds -&gt; Add Thresholds</p><ul><li>There are a lot of metrics in ShenYu monitoring, for example, we will set the threshold for the <code>number of open file descriptors</code> <code>process_open_fds</code> -&gt; <code>value</code> metric, which will alert you when the number of open file descriptors on the server side is greater than 3,000.</li><li>Here we configure an alert to be issued when the <code>value' of </code>process_open_fds` exceeds 3000, with an alert level of <strong>Warning alert</strong>, which is triggered three times, as shown in the following figure.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-shenyu-7-17d6e2393770eb0bfe6822e22c70d924.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Add message notification recipients</li></ol><blockquote><p>Configure recipients to let alert message know who to send to and in what way.</p></blockquote><p>Path: Menu -&gt; Alert Notification -&gt; Alert Recipients -&gt; Add New Recipient.</p><p>Message notification methods support <strong>Email, Nail, WeChat, Flybook, WebHook, SMS</strong>, etc. Here we take the commonly used Nail as an example.</p><ul><li>Refer to this <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">help document</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> Configure the bot on the pinning side, set the security customization keyword <code> HertzBeat</code>, get the corresponding <code>access_token</code> value.</li><li>Configure the recipient parameters in HertzBeat as follows.</li></ul><p>[Alert Notification]<!-- --> -&gt; <!-- -->[Add Recipient]<!-- --> -&gt; <!-- -->[Select Nailed Bot Notification Method]<!-- --> -&gt; <!-- -->[Set Nailed Bot ACCESS_TOKEN]<!-- --> -&gt; <!-- -->[OK]</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"></p><ol start="3"><li>Configure the associated alert notification policy ⚠️ <!-- -->[Add Notification Policy]<!-- --> -&gt; <!-- -->[Associate the recipient you just set]<!-- --> -&gt; <!-- -->[OK]<!-- --> !</li></ol><blockquote><p>Configure the alert notification policy to bind alert messages to recipients so that you can decide which alerts go to which person.</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="over-and-out-now-wait-for-the-alert-message-to-come-through-ding-ding-ding-ding">Over and out, now wait for the alert message to come through. Ding, ding, ding, ding.<a href="#over-and-out-now-wait-for-the-alert-message-to-come-through-ding-ding-ding-ding" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat Alert Notification]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alert target object : shenyu.process_open_fds.value</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Task ID : 205540620349696</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Task name : SHENYU_localhost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm level : Warning alarm</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm Trigger Time : 2023-01-08 22:17:06</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Details : Please note that the number of file descriptors opened by ⚠️ ShenYu gateway is 3044 more than 3000</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>This hands-on article takes us through how to use HertzBeat to monitor Apache ShenYu metrics data, and we can find that HertzBeat, which combines <code>Monitoring-Alert-Notification</code>, is much more convenient to operate and use, and you can include ShenYu in the monitoring by simply clicking on a page. There is no need to deploy multiple components and write multiple YML configuration files. </p></div></div><p>Apache ShenYu Github: <a href="https://github.com/apache/shenyu" target="_blank" rel="noopener noreferrer">https://github.com/apache/shenyu</a><br>
<!-- -->HertzBeat Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><p><strong>Welcome to learn about using Star Support Oh! </strong></p><p>Experience heartbeat with a single docker command:<br>
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Use HertzBeat Monitoring IoTDB]]></title>
<link>https://hertzbeat.apache.org/blog/2023/01/05/monitor-iotdb</link>
<guid>https://hertzbeat.apache.org/blog/2023/01/05/monitor-iotdb</guid>
<pubDate>Thu, 05 Jan 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Use HertzBeat to monitor the Internet of Things database IoTDB, and it will be done in 5 minutes!]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="use-hertzbeat-to-monitor-the-internet-of-things-database-iotdb-and-it-will-be-done-in-5-minutes">Use HertzBeat to monitor the Internet of Things database IoTDB, and it will be done in 5 minutes!<a href="#use-hertzbeat-to-monitor-the-internet-of-things-database-iotdb-and-it-will-be-done-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="introduction-to-iotdb">Introduction to IoTDB<a href="#introduction-to-iotdb" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>Apache IoTDB (Internet of Things Database) is a time-series database management system that can provide users with data collection, storage and analysis services.
Due to its lightweight architecture, high performance and high availability, and seamless integration with Hadoop and Spark ecosystems, IoTDB meets the requirements of massive data storage, high-throughput data writing, and complex data query and analysis in the industrial IoT field. need.</p></blockquote><h3 class="anchor anchorWithStickyNavbar_LWe7" id="introduction-to-hertzbeat">Introduction to HertzBeat<a href="#introduction-to-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><blockquote><p>HertzBeat is an open source, easy-to-use and friendly real-time monitoring tool that does not require Agent and has powerful custom monitoring capabilities.
Supports monitoring of application services, databases, operating systems, middleware, cloud native, etc., threshold alarms, and alarm notifications (email WeChat Dingding Feishu).
HertzBeat's powerful customization, multi-type support, easy expansion, and low coupling hope to help developers and small and medium teams quickly build their own monitoring tools.</p></blockquote><h3 class="anchor anchorWithStickyNavbar_LWe7" id="get-monitoring-iotdb-in-hertzbeat-in-5-minutes">Get monitoring IoTDB in HertzBeat in 5 minutes<a href="#get-monitoring-iotdb-in-hertzbeat-in-5-minutes" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="prerequisites-you-already-have-iotdb-environment-and-hertzbeat-environment">Prerequisites, you already have IoTDB environment and HertzBeat environment.<a href="#prerequisites-you-already-have-iotdb-environment-and-hertzbeat-environment" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ul><li>IoTDB <a href="https://iotdb.apache.org/UserGuide/V0.13.x/QuickStart/QuickStart.html" target="_blank" rel="noopener noreferrer">deployment and installation documentation</a></li><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">deployment installation documentation</a></li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="1-enable-the-metrics-function-on-the-iotdb-side-which-will-provide-interface-data-in-the-form-of-prometheus-metrics">1. Enable the <code>metrics</code> function on the IoTDB side, which will provide interface data in the form of prometheus metrics.<a href="#1-enable-the-metrics-function-on-the-iotdb-side-which-will-provide-interface-data-in-the-form-of-prometheus-metrics" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>The metric collection is disabled by default, you need to modify the parameters in <code>conf/iotdb-metric.yml</code> first, then restart the server</li></ol><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain"># Whether to start the monitoring module, the default is false</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">enableMetric: true</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># Data provision method, externally provide metrics data through jmx and prometheus protocol, optional parameters: [JMX, PROMETHEUS, IOTDB], IOTDB is closed by default.</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">metricReporterList:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> - JMX</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> - PROMETHEUS</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="2"><li>Restart IoTDB, open a browser or use curl to access http://ip:9091/metrics, and you can see the metric data.</li></ol><h4 class="anchor anchorWithStickyNavbar_LWe7" id="2-add-iotdb-monitoring-on-the-hertzbeat-monitoring-page">2. Add IoTDB monitoring on the HertzBeat monitoring page<a href="#2-add-iotdb-monitoring-on-the-hertzbeat-monitoring-page" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click Add IoTDB Monitoring</li></ol><p>Path: Menu -&gt; Database Monitoring -&gt; IoTDB Monitoring -&gt; Add IoTDB Monitoring</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-iotdb-1-518ff666fb4994d0961f999e4185600f.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Configure the parameters required for monitoring IoTDB</li></ol><p>Fill in the IoTDB <strong>service IP</strong> and <strong>monitoring port</strong> (default 9091) on the monitoring page, and finally click OK to add.
For other parameters such as <strong>collection interval</strong>, <strong>timeout period</strong>, etc., please refer to <a href="https://hertzbeat.com/docs/help/iotdb/" target="_blank" rel="noopener noreferrer">Help Documentation</a> <a href="https://hertzbeat.com/docs/help" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help</a> /iotdb/</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-iotdb-2-243561382bbdf6fec6bd9133bdc510a3.png" width="4064" height="2166" class="img_ev3q"></p><ol start="3"><li>Complete ✅, now we have added the monitoring of IoTDB, check the monitoring list to see our added items.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-iotdb-3-83c02b3121bbcac706c039c964eb3086.png" width="4064" height="2166" class="img_ev3q"></p><ol start="4"><li>Click <strong>Operation</strong>-&gt;<strong>Monitoring Details Icon</strong> of the monitoring list item to browse the real-time monitoring metric data of IoTDB.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-iotdb-4-20ca3228c2ff616977e1b266617fc33e.png" width="4064" height="2166" class="img_ev3q"></p><ol start="5"><li>Click <strong>Monitoring History Details TAB</strong> to browse IoTDB's historical monitoring metric data chart📈.</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-iotdb-5-eedef9c331cdd660090a0d078c851a83.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>Complete DONE! Through the above steps, it is actually two steps to sum up</strong></p><ul><li><strong>Enable <code>metrics</code> function on IoTDB in one step</strong></li><li><strong>Another step is to configure the IP port on the HertzBeat monitoring page to add monitoring</strong></li></ul><p><strong>In this way, we have completed the monitoring of IoTDB. We can view the monitoring details and metrics at any time to observe its service status, but people cannot always watch it. When there is always a time to rest, monitoring is often accompanied by alarms. When monitoring When the metrics are abnormal, the monitoring tool needs to be able to notify the person in charge in time</strong></p><p><strong>Next, we will teach you step by step to configure the threshold alarm notification in the HertzBeat system</strong></p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="3-add-iotdb-metric-threshold-alarm-in-hertzbeat-system">3. Add IoTDB metric threshold alarm in HertzBeat system<a href="#3-add-iotdb-metric-threshold-alarm-in-hertzbeat-system" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Configure a threshold alarm for an important metric</li></ol><p>Path: Menu -&gt; Alarm Threshold -&gt; Add Threshold</p><ul><li>Select the configured metric object. IotDB monitors many metrics, one of which is related to the status of the node <code>cluster_node_status</code> -&gt; <code>status</code> (node status, 1=online 2=offline).</li><li>Here we configure to send an alarm when the metric <code>status==2</code>, the alarm level is <strong>Critical Alarm</strong>, which is triggered once, as shown in the figure below.</li></ul><p><img loading="lazy" alt="hertzbeat" src="/assets/images/monitor-iotdb-6-8050c598b8bac37904e0f0b63d309f95.png" width="4064" height="2166" class="img_ev3q"></p><ol start="2"><li>Add message notification recipients</li></ol><p>Path: Menu -&gt; Alarm Notification -&gt; Alarm Recipient -&gt; Add New Recipient</p><p>Message notification methods support <strong>email, DingTalk, WeChat Work, Feishu, WebHook, SMS</strong>, etc. Here we take the commonly used DingTalk as an example.</p><ul><li>Refer to this <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">Help Documentation</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> to configure the robot on DingTalk and set the security custom keyword <code>HertzBeat </code>, get the corresponding <code>access_token</code> value.</li><li>Configure the receiver parameters in HertzBeat as follows.</li></ul><p>【Alarm Notification】-&gt;【New Recipient】-&gt;【Select DingTalk Robot Notification Method】-&gt;【Set DingTalk Robot ACCESS_TOKEN】-&gt;【OK】</p><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"></p><ol start="3"><li>Configure the associated alarm notification strategy ⚠️ <!-- -->[Add notification strategy]<!-- --> -&gt; <!-- -->[Associate the recipient just set]<!-- --> -&gt; <!-- -->[OK]</li></ol><p><img loading="lazy" alt="hertzbeat" src="/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding">Finished, now wait for the warning message to come. ding ding ding ding<a href="#finished-now-wait-for-the-warning-message-to-come-ding-ding-ding-ding" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat warning notification]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm target object: iotdb.cluster_node_status.status</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Affiliated monitoring ID: 205540620349696</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Belonging monitoring name: IOTDB_localhost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm level: critical alarm</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Alarm trigger time: 2023-01-05 22:17:06</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Content details: The status of IOTDB node 127.0.0.1 is monitored as OFFLINE, please deal with it in time.</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="#summary" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>This practical article took us to experience that if HertzBeat is used to monitor the IoTDB database metric data, we can find that HertzBeat, which integrates monitoring-alarm-notification, is more convenient in operation and use, and IoTDB can be included in the monitoring with a simple click on the page, it is no longer necessary to deploy multiple components and write multiple YML configuration files with thresholds.</p><p>IoTDB Github: <a href="https://github.com/apache/iotdb" target="_blank" rel="noopener noreferrer">https://github.com/apache/iotdb</a>
HertzBeat Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></p><p><strong>Welcome to learn about using Star Support! </strong></p><p>Only one docker command is needed to install and experience heartbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Note ⚠️HertzBeat v1.2.3 version supports IoTDB v0.12 v0.13. Since its v1.0 has just been released, all metrics of this version are not yet compatible.</p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.2.3!Support Prometheus,ShenYu and IotDb]]></title>
<link>https://hertzbeat.apache.org/blog/2022/12/28/hertzbeat-v1.2.3</link>
<guid>https://hertzbeat.apache.org/blog/2022/12/28/hertzbeat-v1.2.3</guid>
<pubDate>Wed, 28 Dec 2022 00:00:00 GMT</pubDate>
<description><![CDATA[v1.2.3]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="v123">v1.2.3<a href="#v123" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Home: hertzbeat.com | tancloud.cn</p><p>Hi guys! HertzBeat v1.2.3 is coming. This release we support prometheus exporter and more. Now we can collect prometheus exporter metrics using hertzbeat. For this, we support monitor apache shenyu and apache iotdb. Fixed several bugs and improved the overall stable usability.</p><p>Let's Try It Now!</p><p>Only one docker command is needed to install and experience heartbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Thanks to the contributors! 👍👍</p><p>We urgently need contributors to test cases, new application monitoring, documentation, etc., and very welcome you to join. Come on! HertzBeat is so easy!</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/472" target="_blank" rel="noopener noreferrer">[doc] note: startup via source code not required mysql and tdengine env #472</a> @xingshuaiLi</li><li><a href="https://github.com/dromara/hertzbeat/pull/473" target="_blank" rel="noopener noreferrer">[doc] fix up:update the environment of hertzbeat to Java version 11 #473</a> @BKing2020</li><li><a href="https://github.com/dromara/hertzbeat/pull/478" target="_blank" rel="noopener noreferrer">[docs] update kubernetes.md #478</a> @wangke6666</li><li><a href="https://github.com/dromara/hertzbeat/pull/485" target="_blank" rel="noopener noreferrer">[web-app] enable alert define preset true by default #485</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/486" target="_blank" rel="noopener noreferrer">[web-app] support friendly tip when add notice receiver #486</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/487" target="_blank" rel="noopener noreferrer">[web-app] update dashboard category card ui #487</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/488" target="_blank" rel="noopener noreferrer">[collector] limit trigger sub task max num #488</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/489" target="_blank" rel="noopener noreferrer">[script] support service restart shell #489</a> @zanglikun</li><li><a href="https://github.com/dromara/hertzbeat/pull/495" target="_blank" rel="noopener noreferrer">[docs] use rainbond deploy hertzbeat #495</a> @zzzhangqi</li><li><a href="https://github.com/dromara/hertzbeat/pull/501" target="_blank" rel="noopener noreferrer">[webapp] upgrade web base angular version to 14 #501</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/503" target="_blank" rel="noopener noreferrer">[hertzbeat] support sms alert notice #503</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/505" target="_blank" rel="noopener noreferrer">add Prometheus exporter metrics parser and IoTDB monitor #505</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/507" target="_blank" rel="noopener noreferrer">support apache shenyu metrics monitoring #507</a></li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/469" target="_blank" rel="noopener noreferrer">[manager] fix cross domain problem in SecurityCorsConfiguration #469</a> @zenan08</li><li><a href="https://github.com/dromara/hertzbeat/pull/479" target="_blank" rel="noopener noreferrer">[manager] bugfix linux cpu usage collect incorrect sometime #479</a> @LWBobo</li><li><a href="https://github.com/dromara/hertzbeat/pull/491" target="_blank" rel="noopener noreferrer">[collector] fix protocol ssl_cert not support #491</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/493" target="_blank" rel="noopener noreferrer">Update sqlserver.md #493</a> @SuitSmile</li><li><a href="https://github.com/dromara/hertzbeat/pull/502" target="_blank" rel="noopener noreferrer">fix: Remove Alert Unused Monitoring IDs #502</a> @wang1027-wqh</li><li><a href="https://github.com/dromara/hertzbeat/pull/508" target="_blank" rel="noopener noreferrer">[collector] bugfix npe when ssh collect error #508</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/511" target="_blank" rel="noopener noreferrer">监控k8s问题issue描述与解决方案 #511</a> @MrAndyMing</li><li><a href="https://github.com/dromara/hertzbeat/pull/515" target="_blank" rel="noopener noreferrer">[manager] springboot2 monitor support base path config #515</a></li></ol><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><p>Have Fun!</p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="v123-1">V1.2.3<a href="#v123-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>官网: hertzbeat.com | tancloud.cn</p><p>大家好,HertzBeat v1.2.3发布啦!这个版本带来了重大更新,我们支持了对prometheus exporter协议监控,用户可以很方便的使用hertzbeat来适配监控prometheus exporter. 基于这个能力,这个版本我们也支持了对apache shenyu, apache iotdb的指标监控。我们更新了UI布局,修复了多个BUG,也支持了短信通知。快来体验下吧!</p><p>只需要一条docker命令即可安装体验heartbeat :
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>感谢hertzbeat贡献者们的贡献!👍👍</p><p>我们急需对测试用例,新增应用监控,文档等各方面的贡献者,非常欢迎您的加入。快来吧,HertzBeat上手非常简单!</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/472" target="_blank" rel="noopener noreferrer">[doc] note: startup via source code not required mysql and tdengine env #472</a> @xingshuaiLi</li><li><a href="https://github.com/dromara/hertzbeat/pull/473" target="_blank" rel="noopener noreferrer">[doc] fix up:update the environment of hertzbeat to Java version 11 #473</a> @BKing2020</li><li><a href="https://github.com/dromara/hertzbeat/pull/478" target="_blank" rel="noopener noreferrer">[docs] update kubernetes.md #478</a> @wangke6666</li><li><a href="https://github.com/dromara/hertzbeat/pull/485" target="_blank" rel="noopener noreferrer">[web-app] enable alert define preset true by default #485</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/486" target="_blank" rel="noopener noreferrer">[web-app] support friendly tip when add notice receiver #486</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/487" target="_blank" rel="noopener noreferrer">[web-app] update dashboard category card ui #487</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/488" target="_blank" rel="noopener noreferrer">[collector] limit trigger sub task max num #488</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/489" target="_blank" rel="noopener noreferrer">[script] support service restart shell #489</a> @zanglikun</li><li><a href="https://github.com/dromara/hertzbeat/pull/495" target="_blank" rel="noopener noreferrer">[docs] use rainbond deploy hertzbeat #495</a> @zzzhangqi</li><li><a href="https://github.com/dromara/hertzbeat/pull/501" target="_blank" rel="noopener noreferrer">[webapp] upgrade web base angular version to 14 #501</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/503" target="_blank" rel="noopener noreferrer">[hertzbeat] support sms alert notice #503</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/505" target="_blank" rel="noopener noreferrer">add Prometheus exporter metrics parser and IoTDB monitor #505</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/507" target="_blank" rel="noopener noreferrer">support apache shenyu metrics monitoring #507</a></li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/469" target="_blank" rel="noopener noreferrer">[manager] fix cross domain problem in SecurityCorsConfiguration #469</a> @zenan08</li><li><a href="https://github.com/dromara/hertzbeat/pull/479" target="_blank" rel="noopener noreferrer">[manager] bugfix linux cpu usage collect incorrect sometime #479</a> @LWBobo</li><li><a href="https://github.com/dromara/hertzbeat/pull/491" target="_blank" rel="noopener noreferrer">[collector] fix protocol ssl_cert not support #491</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/493" target="_blank" rel="noopener noreferrer">Update sqlserver.md #493</a> @SuitSmile</li><li><a href="https://github.com/dromara/hertzbeat/pull/502" target="_blank" rel="noopener noreferrer">fix: Remove Alert Unused Monitoring IDs #502</a> @wang1027-wqh</li><li><a href="https://github.com/dromara/hertzbeat/pull/508" target="_blank" rel="noopener noreferrer">[collector] bugfix npe when ssh collect error #508</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/511" target="_blank" rel="noopener noreferrer">监控k8s问题issue描述与解决方案 #511</a> @MrAndyMing</li><li><a href="https://github.com/dromara/hertzbeat/pull/515" target="_blank" rel="noopener noreferrer">[manager] springboot2 monitor support base path config #515</a></li></ol><hr>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[恭喜 HertzBeat 迎来了两位新晋社区Committer]]></title>
<link>https://hertzbeat.apache.org/blog/2022/12/19/new-committer</link>
<guid>https://hertzbeat.apache.org/blog/2022/12/19/new-committer</guid>
<pubDate>Mon, 19 Dec 2022 00:00:00 GMT</pubDate>
<description><![CDATA[非常高兴 Dromara HertzBeat 迎来了两位新晋社区Committer, 两位都是来自互联网公司的开发工程师,让我们来了解下他们的开源经历吧!]]></description>
<content:encoded><![CDATA[<blockquote><p>非常高兴 Dromara HertzBeat 迎来了两位新晋社区Committer, 两位都是来自互联网公司的开发工程师,让我们来了解下他们的开源经历吧!</p></blockquote><h2 class="anchor anchorWithStickyNavbar_LWe7" id="第一位-花城">第一位 花城<a href="#第一位-花城" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>姓名:王庆华</p><p>现从事:阿里巴巴开发工程师</p><p>HertzBeat Committer</p><p>github:<a href="https://github.com/wang1027-wqh" target="_blank" rel="noopener noreferrer">wang1027-wqh</a></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="初识hertzbeat">初识hertzbeat<a href="#初识hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>说起来挺偶然的,结识hertzbeat是因为我大学的毕业设计,当时在一家互联网公司实习,那个时候第一次看到了企业是怎么监控项目的,不管是系统监控、业务监控还是物联网iot监控,那个时候见世面不广,只知道Prometheus + Grafana,但是学起来、用起来成本比较高,那个时候就觉得应该有其他类型的监控,恰好,到了大学毕业设计选题,我就开始寻找这方面的开源项目,那个时候我们小组正在使用Shen Yu网关,我就看了下社区,发现了hertzbeat,自此我便于它结缘了。</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="开始提交pr">开始提交PR<a href="#开始提交pr" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>到了2022-02-18 我开始提交了我第一个pr,当时只是为了优化一些controller入参的格式,没有什么技术含量,但是这是我接触开源的第一步,让我在从理论学习跨出了实践的一步</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="持续的开源贡献与收获">持续的开源贡献与收获<a href="#持续的开源贡献与收获" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>到目前为止,参与hertzbeat开源项目已有半年多时间,贡献了许多,也成长收获了许多。具体如下:</p><ol><li>见证了hertzbeat的贡献值从0到1</li><li>兼容了zookeeper、JVM、Kafka等监控功能</li><li>实现了hertzbeat项目的国际化</li><li>参与了开源之夏并顺利结项</li><li>增加了监控系统的基础告警功能: 钉钉、飞书、企业微信、邮箱等</li></ol><h2 class="anchor anchorWithStickyNavbar_LWe7" id="感谢社区小伙伴">感谢社区小伙伴<a href="#感谢社区小伙伴" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>感谢无偿帮助过我或给过我启发的小伙伴(排名不分先后):tomsun28,MaxKeyTop,阿超</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="对新人的一点建议">对新人的一点建议<a href="#对新人的一点建议" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ol><li>不要觉得自己一上手就能接触到核心,心急吃不了热豆腐</li><li>不要只注重看代码,要上手搭建、使用</li><li>有想法就大胆尝试,不管自己的方案是否完善</li><li>多多关注开源,了解社区动态,多和开源开发者交流</li></ol><hr><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="第二位-星辰">第二位 星辰<a href="#第二位-星辰" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>姓名:郑晨鑫</p><p>现从事:某互联网公司Java开发工程师</p><p>email:<a href="mailto:1758619238@qq.com" target="_blank" rel="noopener noreferrer">1758619238@qq.com</a></p><p>Hertzbeat Committer</p><p>github:<a href="https://github.com/Ceilzcx" target="_blank" rel="noopener noreferrer">Ceilzcx (zcx) (github.com)</a></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="初识hertzbeat-1">初识Hertzbeat<a href="#初识hertzbeat-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>2022年8月开始接触Hertzbeat,由于公司监控elasticsearch使用的cerebro,虽然有非常强大的数据监控,但缺少告警通知的功能;就去github上浏览监控类的项目,刚好看到Hertzbeat,对此非常感兴趣,在了解完整个项目结构和实现后,刚好elasticsearch的监控部分做的不够完善,我就根据cerebro完善了这部分监控数据并提交了pull request。后面在tom老哥的帮助下也开始其他部分的实现。</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="开始提交pr-1">开始提交PR<a href="#开始提交pr-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>从2022年9月至今提交了好几个pr,主要包括:</p><ul><li>Json解析功能的增量,elasticsearch的数据监控增强</li><li>实现监控数据添加单位</li><li>spring.mail改为非必填,优化部分告警阈值的返回处理</li><li>实现IoTDB的时序数据库</li><li>一些bug的修复。。。</li><li>promethues exporter 协议解析</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="持续的开源贡献与收获-1">持续的开源贡献与收获<a href="#持续的开源贡献与收获-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>到目前为止,参与Hertzbeat社区开源已有半年多时间,贡献了许多,也成长收获了许多。</p><p>在参与开源的时候会比平常自己做项目想的更多,包括使用第三方软件各个版本如何兼容;实现某个功能也要考虑是否方便以后扩展;要有完善的test模块,减少项目的bug。</p><p>同时在社区群里,看到别人提的问题和帮助别人可以学到很多新的知识,很多问题你目前不一定会遇到,其他人遇到的时候你可以思考并收获很多知识。</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="感谢社区小伙伴-1">感谢社区小伙伴<a href="#感谢社区小伙伴-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>感谢无偿帮助过我或给过我启发的小伙伴:<a href="https://github.com/tomsun28" target="_blank" rel="noopener noreferrer">tomsun28</a></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="对新人的一点建议-1">对新人的一点建议<a href="#对新人的一点建议-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li>使用者可以先看官网,官网基本能够解决你的问题。部分简单或者常见的问题其他可以自己解决,对自己也是一种锻炼</li><li>可以尝试阅读源码,大部分源码都是包含注释的,并不难;不懂的地方也可以通过运行test,debug看一下整个流程</li><li>有想法或者bug,可以前往gitee或者github提交issues,也可以在群里询问,不要怕,都是从菜逼过来的</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="如何参与hertzbeat">如何参与Hertzbeat<a href="#如何参与hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><ul><li><p>官网有非常完善的贡献者指南:<a href="https://hertzbeat.com/docs/others/contributing" target="_blank" rel="noopener noreferrer">贡献者指南 | HertzBeat</a></p></li><li><p>Github issues:<a href="https://github.com/dromara/hertzbeat/issues" target="_blank" rel="noopener noreferrer">Issues · dromara/hertzbeat (github.com)</a></p></li><li><p>如果是大的改动,建议提交前编写issues,在提交pr,同时请注意编码的规范,尽量减少bug和警告的产生</p></li></ul><blockquote><p>以上就是我们新晋Committer们的开源经历了,可以看出参与开源并不难,更重要的是迈出第一步,无论是代码还是文档修复或者提交issue,这些都是贡献者参与开源的姿势。快来加入我们吧!</p></blockquote>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.2.2!Support K8S Monitor And More.]]></title>
<link>https://hertzbeat.apache.org/blog/2022/11/28/hertzbeat-v1.2.2</link>
<guid>https://hertzbeat.apache.org/blog/2022/11/28/hertzbeat-v1.2.2</guid>
<pubDate>Mon, 28 Nov 2022 00:00:00 GMT</pubDate>
<description><![CDATA[v1.2.2]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="v122">v1.2.2<a href="#v122" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Home: hertzbeat.com | tancloud.cn</p><p>Hi guys! HertzBeat v1.2.2 is coming. This release brings significant features. This version we support monitor kubernetes, docker, springboot, nacos and database dm, opengauss and more. Also we bring an experimental feature, users can custom define metrics collect from prometheus with promql. Fixed several bugs and improved the overall stable usability. And more, linux monitor we support top10 cpu usage metrics, top10 memory usage metrics.<br>
<!-- -->Let's Try It Now!</p><p>Only one docker command is needed to install and experience heartbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Thanks to the contributors! 👍👍</p><p>We urgently need contributors to test cases, new application monitoring, documentation, etc., and very welcome you to join. Come on! HertzBeat is so easy!</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/410" target="_blank" rel="noopener noreferrer">[manager,collector] support dm database monitor #410</a> @TJxiaobao</li><li><a href="https://github.com/dromara/hertzbeat/pull/411" target="_blank" rel="noopener noreferrer">[home] add DM db document supplement #411</a> @TJxiaobao</li><li><a href="https://github.com/dromara/hertzbeat/pull/416" target="_blank" rel="noopener noreferrer">[home] support algolia search #416</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/418" target="_blank" rel="noopener noreferrer">[collector] support trigger and grading multiple subtasks through -_- placeholder expression #418</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/421" target="_blank" rel="noopener noreferrer">WIP:feature support k8s monitor, http monitor nacos, service&amp;http_micro monitor msa #421</a> @cuipiheqiuqiu</li><li><a href="https://github.com/dromara/hertzbeat/pull/422" target="_blank" rel="noopener noreferrer">[manager] support opengauss database monitor #422</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/426" target="_blank" rel="noopener noreferrer">[#406][warehose] Add unit test MetricsDataControllerTest.java #426</a> @haibo-duan</li><li><a href="https://github.com/dromara/hertzbeat/pull/427" target="_blank" rel="noopener noreferrer">[#358][manager] Add unit test manager/service/NoticeConfigServiceTest.java #427</a> @haibo-duan</li><li><a href="https://github.com/dromara/hertzbeat/pull/432" target="_blank" rel="noopener noreferrer">[#356][manager] unit test case of manager/service/MailServiceTest.java #432</a> @csyshu</li><li><a href="https://github.com/dromara/hertzbeat/pull/438" target="_blank" rel="noopener noreferrer">[manager,collector] support docker metrics monitor #438</a> @TJxiaobao</li><li><a href="https://github.com/dromara/hertzbeat/pull/448" target="_blank" rel="noopener noreferrer">[alerter] implement AlertDefineControllerTest unit case #448</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/449" target="_blank" rel="noopener noreferrer">[collector] support spi load AbstractCollect Impl instance #449</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/451" target="_blank" rel="noopener noreferrer">[manager] support linux process top10 cpu_usage mem_usage #451</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/453" target="_blank" rel="noopener noreferrer">[hertzbeat] support springboot2.0 metrics monitor #453</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/455" target="_blank" rel="noopener noreferrer">[manager-monitors](增强)应用服务检测-网站检测-分页:添加默认name升序 (enhancement)manager-… #455</a> @luxx-lq</li><li><a href="https://github.com/dromara/hertzbeat/pull/456" target="_blank" rel="noopener noreferrer">[hertzbeat] update use PromQL to collect metrics from prometheus server #456</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/460" target="_blank" rel="noopener noreferrer">[manager] support custom monitor api response data code #460</a></li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/409" target="_blank" rel="noopener noreferrer">【bugfix#408】if logs dir not exist, create logs dir #409</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/413" target="_blank" rel="noopener noreferrer">[warehouse] bugfix RealTimeRedisDataStorage wrong extend from #413</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/414" target="_blank" rel="noopener noreferrer">end The query closed the dataSet #414</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/415" target="_blank" rel="noopener noreferrer">[alerter] bugfix monitor status not change when alert #415</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/424" target="_blank" rel="noopener noreferrer">[OS Monitor]bugfix:Fix cpu cores and interrupt acquisition under Orac… #424</a> @assassinfym</li><li><a href="https://github.com/dromara/hertzbeat/pull/459" target="_blank" rel="noopener noreferrer">[manager] bugfix the gmtUpdate not change when update monitor param #459</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/464" target="_blank" rel="noopener noreferrer">[home] fix typo in springboot2.md #464</a> @eltociear</li></ol><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><p>Have Fun!</p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="v122-1">V1.2.2<a href="#v122-1" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>官网: hertzbeat.com | tancloud.cn</p><p>大家好,HertzBeat v1.2.2发布啦!这个版本带来个超多重大更新,我们支持了对云原生kubernets, docker的监控,支持了对springboot应用, nacos注册发现中心,达梦数据库,opengauss数据库等的指标监控。我们也引入了一个实验性特性,用户可以使用promethues promql 从promethues server拿取指标数据作为hertzbeat自定义监控指标数据。当然我们也新增了多个测试用户覆盖,修复了多个BUG。还有个很多用户想要的更新,我们新增了对linux监控的top10 cpu 内存利用率的进程监控指标。有个这个指标,我们就可以干很多事情。比如监控某个进程CPU异常,内存爆满啥的。快来试试吧!</p><p>只需要一条docker命令即可安装体验heartbeat :
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>感谢hertzbeat贡献者们的贡献!👍👍</p><p>我们急需对测试用例,新增应用监控,文档等各方面的贡献者,非常欢迎您的加入。快来吧,HertzBeat上手非常简单!</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/410" target="_blank" rel="noopener noreferrer">[manager,collector] support dm database monitor #410</a> @TJxiaobao</li><li><a href="https://github.com/dromara/hertzbeat/pull/411" target="_blank" rel="noopener noreferrer">[home] add DM db document supplement #411</a> @TJxiaobao</li><li><a href="https://github.com/dromara/hertzbeat/pull/416" target="_blank" rel="noopener noreferrer">[home] support algolia search #416</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/418" target="_blank" rel="noopener noreferrer">[collector] support trigger and grading multiple subtasks through -_- placeholder expression #418</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/421" target="_blank" rel="noopener noreferrer">WIP:feature support k8s monitor, http monitor nacos, service&amp;http_micro monitor msa #421</a> @cuipiheqiuqiu</li><li><a href="https://github.com/dromara/hertzbeat/pull/422" target="_blank" rel="noopener noreferrer">[manager] support opengauss database monitor #422</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/426" target="_blank" rel="noopener noreferrer">[#406][warehose] Add unit test MetricsDataControllerTest.java #426</a> @haibo-duan</li><li><a href="https://github.com/dromara/hertzbeat/pull/427" target="_blank" rel="noopener noreferrer">[#358][manager] Add unit test manager/service/NoticeConfigServiceTest.java #427</a> @haibo-duan</li><li><a href="https://github.com/dromara/hertzbeat/pull/432" target="_blank" rel="noopener noreferrer">[#356][manager] unit test case of manager/service/MailServiceTest.java #432</a> @csyshu</li><li><a href="https://github.com/dromara/hertzbeat/pull/438" target="_blank" rel="noopener noreferrer">[manager,collector] support docker metrics monitor #438</a> @TJxiaobao</li><li><a href="https://github.com/dromara/hertzbeat/pull/448" target="_blank" rel="noopener noreferrer">[alerter] implement AlertDefineControllerTest unit case #448</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/449" target="_blank" rel="noopener noreferrer">[collector] support spi load AbstractCollect Impl instance #449</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/451" target="_blank" rel="noopener noreferrer">[manager] support linux process top10 cpu_usage mem_usage #451</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/453" target="_blank" rel="noopener noreferrer">[hertzbeat] support springboot2.0 metrics monitor #453</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/455" target="_blank" rel="noopener noreferrer">[manager-monitors](增强)应用服务检测-网站检测-分页:添加默认name升序 (enhancement)manager-… #455</a> @luxx-lq</li><li><a href="https://github.com/dromara/hertzbeat/pull/456" target="_blank" rel="noopener noreferrer">[hertzbeat] update use PromQL to collect metrics from prometheus server #456</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/460" target="_blank" rel="noopener noreferrer">[manager] support custom monitor api response data code #460</a></li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/409" target="_blank" rel="noopener noreferrer">【bugfix#408】if logs dir not exist, create logs dir #409</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/413" target="_blank" rel="noopener noreferrer">[warehouse] bugfix RealTimeRedisDataStorage wrong extend from #413</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/414" target="_blank" rel="noopener noreferrer">end The query closed the dataSet #414</a> @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/415" target="_blank" rel="noopener noreferrer">[alerter] bugfix monitor status not change when alert #415</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/424" target="_blank" rel="noopener noreferrer">[OS Monitor]bugfix:Fix cpu cores and interrupt acquisition under Orac… #424</a> @assassinfym</li><li><a href="https://github.com/dromara/hertzbeat/pull/459" target="_blank" rel="noopener noreferrer">[manager] bugfix the gmtUpdate not change when update monitor param #459</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/464" target="_blank" rel="noopener noreferrer">[home] fix typo in springboot2.md #464</a> @eltociear</li></ol><hr>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.2.0 Released! Easy-to-use and friendly open source real-time monitoring tool]]></title>
<link>https://hertzbeat.apache.org/blog/2022/10/08/hertzbeat-v1.2.0</link>
<guid>https://hertzbeat.apache.org/blog/2022/10/08/hertzbeat-v1.2.0</guid>
<pubDate>Sat, 08 Oct 2022 00:00:00 GMT</pubDate>
<description><![CDATA[v1.2.0]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="v120">v1.2.0<a href="#v120" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Home: hertzbeat.com | tancloud.cn</p><p>Hi guys! HertzBeat v1.2.0 is coming. This version supports more powerful metrics collect jsonpath, upgrade springboot version to 2.7.4, support This version supports more powerful metrics collect jsonpath, upgrade springboot version to 2.7.4, support metrics unit convert display, and more. Fixed several bugs and improved the overall stable usability.</p><p>Only one docker command is needed to install and experience heartbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Thanks to the contributors! 👍👍 @Ceilzcx @Privauto @VampireAchao @DreamGirl524 @CharlieXCL @emrys-he @SxLiuYu @tomsun28</p><p>We urgently need contributors to test cases, new application monitoring, documentation, etc., and very welcome you to join. Come on! HertzBeat is so easy!</p><p>Features. 1. [<!-- -->[home,manager]<!-- -->]</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/284" target="_blank" rel="noopener noreferrer">[home,manager]add practice learn doc and hertzbeat monitor yml #284</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/289" target="_blank" rel="noopener noreferrer">[webapp] auto redirect url when detect browser language #289</a> contribute by @DreamGirl524</li><li><a href="https://github.com/dromara/hertzbeat/pull/293" target="_blank" rel="noopener noreferrer">[home] update logo icon cdn url with fault tolerance #293</a> contributed by @VampireAchao</li><li><a href="https://github.com/dromara/hertzbeat/pull/295" target="_blank" rel="noopener noreferrer">[monitor] enable powerful jsonpath parser, add es metrics #295</a> contributed by @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/296" target="_blank" rel="noopener noreferrer">[webapp] update ui theme #296</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/300" target="_blank" rel="noopener noreferrer">Feature change main pom artifactId #300</a> contributed by @Privauto</li><li><a href="https://github.com/dromara/hertzbeat/pull/302" target="_blank" rel="noopener noreferrer">[home,webapp] add users logo and update hertzbeat brand #302</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/305" target="_blank" rel="noopener noreferrer">[monitor] alerter notify test throw msg to front, optional spring.email config #305</a> contributed by @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/306" target="_blank" rel="noopener noreferrer">[home]doc:update docker-deploy.md and tdengine-init.md #306</a> contributed by @Privauto</li><li><a href="https://github.com/dromara/hertzbeat/pull/320" target="_blank" rel="noopener noreferrer">[hertzbeat] refactor common collect metrics data and alert data queue #320</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/316" target="_blank" rel="noopener noreferrer">[hertzbeat] upgrade springboot version 2.4.13 to 2.7.4 #316</a> contributed by @Privauto</li><li><a href="https://github.com/dromara/hertzbeat/pull/322" target="_blank" rel="noopener noreferrer">[web-app] optimize the monitor detect feedback method #322</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/323" target="_blank" rel="noopener noreferrer">[github,webapp] add webapp ci action, fix eslint warning and upgrade codeql #323</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/324" target="_blank" rel="noopener noreferrer">[hertzbeat] add more unit test and test example #324</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/326" target="_blank" rel="noopener noreferrer">support metrics unit extract, convert and display #326</a> contributed by @Ceilzcx</li><li><a href="https://github.com/dromara/hertzbeat/pull/327" target="_blank" rel="noopener noreferrer">[common] optimize common aviator configuration #327</a></li></ol><p>Bugfixes.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/283" target="_blank" rel="noopener noreferrer">[webapp,home] fix middle category icon and update home doc #283</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/286" target="_blank" rel="noopener noreferrer">[web-app] fix redirect when monitors app is null #286</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/297" target="_blank" rel="noopener noreferrer">[alerter] bugfix aviator expression match npe #297</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/294" target="_blank" rel="noopener noreferrer">[doc] fix project name error #294</a> contributed by @CharlieXCL</li><li>[<!-- -->[common]<!-- -->feature:use "apache.http.conn.util" replace "sun.net.util" for upgrading java version #299](<a href="https://github.com/dromara/" target="_blank" rel="noopener noreferrer">https://github.com/dromara/</a> hertzbeat/pull/299) contributed by @Privauto</li><li><a href="https://github.com/dromara/hertzbeat/pull/304" target="_blank" rel="noopener noreferrer">Update docker-deploy.md #304</a> contributed by @emrys-he</li><li><a href="https://github.com/dromara/hertzbeat/pull/313" target="_blank" rel="noopener noreferrer">fix(sec): upgrade snakeyaml to 1.31 #313</a> contributed by @SxLiuYu</li><li><a href="https://github.com/dromara/hertzbeat/pull/321" target="_blank" rel="noopener noreferrer">[script] add startup log and optimize port service judgment #321</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/325" target="_blank" rel="noopener noreferrer">[web-app] fix echarts y-axis value tip overflow #325</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/329" target="_blank" rel="noopener noreferrer">[webapp] fix interceptor http resp common error-msg when error #329</a>
Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</li></ol><p>Have Fun!</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="upgrade-️">Upgrade ⚠️<a href="#upgrade-️" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h3><p>Need Convert <code>application.yml</code>.</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">spring.</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> resources: static-locations.</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> static-locations.</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> - classpath:/dist/</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> - classpath:... /dist/</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>To
``
spring.
web.
resources: static-locations.
static-locations.</p><ul><li>classpath:/dist/</li><li>classpath:... /dist/</li></ul><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">----</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[Best Practices for SSL Certificate Expiration Monitoring]]></title>
<link>https://hertzbeat.apache.org/blog/2022/09/10/ssl-practice</link>
<guid>https://hertzbeat.apache.org/blog/2022/09/10/ssl-practice</guid>
<pubDate>Sat, 10 Sep 2022 00:00:00 GMT</pubDate>
<description><![CDATA[First of all, I would like to wish all the students who see it a happy mid-autumn festival, good health, and try to get rich on the basis of good health.]]></description>
<content:encoded><![CDATA[<p>First of all, I would like to wish all the students who see it a happy mid-autumn festival, good health, and try to get rich on the basis of good health.</p><p>Into the main topic, most of the sites now support HTTPS by default, we apply for the certificate is generally 3 months or 1 year, it is easy with the passage of time SSL certificate expired we did not find the first time, or in the expiration of the certificate did not update the certificate in a timely manner.</p><p>Today's article describes how to use hertzbeat monitoring system to detect the validity of our website's SSL certificate, when the certificate expires or a few days before the expiration of the certificate, send us an alert message.</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-hertzbeat">What is HertzBeat?<a href="#what-is-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><p>HertzBeat is a real-time monitoring tool with powerful customizable monitoring capabilities without the need for an agent. Website monitoring, PING connectivity, port availability, database, OS, middleware, API monitoring, threshold alerts, alert notifications (email wechat pinning flybook).</p><p><strong>Official website: <a href="https://hertzbeat.com" target="_blank" rel="noopener noreferrer">https://hertzbeat.com</a> | <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">https://tancloud.cn</a></strong></p><p>github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a><br>
<!-- -->gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="install-hertzbeat">Install HertzBeat<a href="#install-hertzbeat" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li><p>If you don't want to install it, you can directly use the cloud service <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud console.tancloud.cn</a></p></li><li><p>The <code>docker</code> environment can be installed with a single command</p></li></ol><p><code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><ol start="3"><li>Installation success browser visit <code>localhost:1157</code> to start, the default account password `admin/hertzbeat</li></ol><h4 class="anchor anchorWithStickyNavbar_LWe7" id="monitoring-ssl-certificates">Monitoring SSL Certificates<a href="#monitoring-ssl-certificates" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><ol><li>Click Add SSL Certificate Monitor</li></ol><blockquote><p>System Page -&gt; Monitor Menu -&gt; SSL Certificates -&gt; New SSL Certificate</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/bd53f343a5b54feab62e71458d076441~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ol start="2"><li>Configure monitoring website</li></ol><blockquote><p>Here is an example to monitor Baidu website, configure the host domain name, name, collection interval, etc. &gt; Click OK.<br>
<!-- -->Click OK. Note that ⚠️ will test the connectivity of the website before adding it by default, and it will add it only if the connection is successful, of course, you can also gray out the <strong>Whether to test</strong> button.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ad1154670648413bb82c8bdeb5b13609~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ol start="3"><li>Viewing Test Indicator Data</li></ol><blockquote><p>You can view the task status in the monitor list, and go into the monitor details to view the metrics data graphs etc.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/f874b45e909c4bb0acdd28b3fb034a61~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ef5d7443f8c04818ae5aa28d421203be~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ol start="4"><li>Set the threshold (triggered when the certificate expires)</li></ol><blockquote><p>System Page -&gt; Alarms -&gt; Alarm Thresholds -&gt; Add Thresholds</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/8d6205172d43463aa34e534477f132f1~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><blockquote><p>Configure thresholds, select SSL certificate indicator object, configure alert expression - triggered when indicator <code>expired</code> is <code>true</code>, i.e. <code>equals(expired, "true")</code> , set alert level notification template message etc.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/83d17b381d994f26a6240e01915b2001~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><blockquote><p>Associate thresholds with monitors, set which monitors this threshold should be applied to in the threshold list.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9b9063d7bcf9454387be0491fc382bd1~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ol start="5"><li>set the threshold (triggered one week before certificate expiration)</li></ol><blockquote><p>Same as above, add a new configuration threshold, configure the alert expression - when the indicator validity timestamp <code>end_timestamp</code>, <code>now()</code> function for the current timestamp, if you configure to trigger the alert one week in advance i.e.: <code>end_timestamp &lt;= (now() + 604800000)</code> , where <code>604800000</code> is the total time difference of 7 days. milliseconds.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/0d6f837f57c247e09f668f60eff4a0ff~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><blockquote><p>Eventually you can see the triggered alarms in the alarm center.</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/5a61b23127524976b2c209ce0ca6a339~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ol start="6"><li>Alarm notification (timely notification via NailWeChatFlysheet, etc.)</li></ol><blockquote><p>Monitoring System -&gt; Alert Notification -&gt; Add Recipients</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7f36956060ef410a82bbecafcbb2957f~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><p>You can refer to the help file for the token configuration of Nail WeChat Flying Book, etc.</p><p><a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a><br>
<a href="https://tancloud.cn/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://tancloud.cn/docs/help/alert_dingtalk</a></p><blockquote><p>Alert Notification -&gt; Add new alert notification policy -&gt; Enable notification for the recipients you just configured</p></blockquote><p><img loading="lazy" src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/d976343e81f843138344a039f3aff8a3~tplv-k3u1fbpfcp-zoom-1.image" class="img_ev3q"></p><ol start="7"><li>OK When the threshold is triggered, we can receive the corresponding alarm message, if there is no notification, you can also view the alarm information in the alarm center.</li></ol><hr><h4 class="anchor anchorWithStickyNavbar_LWe7" id="end">End!<a href="#end" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h4><p>The practice of monitoring SSL certificates here, of course, for hertzbeat this function is just the tip of the iceberg, if you think hertzbeat this open source project is good if you welcome to give us in the GitHub Gitee star oh, thank you very much. Thank you for your support. The author!</p><p><strong>github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a></strong></p><p><strong>gitee: <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></strong></p>]]></content:encoded>
<category>opensource</category>
<category>practice</category>
</item>
<item>
<title><![CDATA[Cloud monitoring system HertzBeat v1.1.3 released!]]></title>
<link>https://hertzbeat.apache.org/blog/2022/09/04/hertzbeat-v1.1.3</link>
<guid>https://hertzbeat.apache.org/blog/2022/09/04/hertzbeat-v1.1.3</guid>
<pubDate>Sun, 04 Sep 2022 00:00:00 GMT</pubDate>
<description><![CDATA[V1.1.3]]></description>
<content:encoded><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="v113">V1.1.3<a href="#v113" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Home: hertzbeat.com | tancloud.cn</p><p>Hi guys! HertzBeat v1.1.3 is coming. This version supports kafka monitor, ssl certificate expired monitor and more. Fixed several bugs and improved the overall stable usability.</p><p>Only one docker command is needed to install and experience hertzbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Thanks to the contributors! 👍👍</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/260" target="_blank" rel="noopener noreferrer">[web-app]feature:update monitors layout, support host copy to clipboard #260</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/263" target="_blank" rel="noopener noreferrer">[monitor] feature: support apache kafka monitor #263</a> contribute by @wang1027-wqh</li><li><a href="https://github.com/dromara/hertzbeat/pull/265" target="_blank" rel="noopener noreferrer">[webapp] support history chart query 3 mouth time range #265</a> issue by @ericfrol</li><li><a href="https://github.com/dromara/hertzbeat/pull/266" target="_blank" rel="noopener noreferrer">[monitor] support ssl certificate expired monitor #266</a> suggest by @noear</li><li><a href="https://github.com/dromara/hertzbeat/pull/268" target="_blank" rel="noopener noreferrer">[web-app] update default interval 600s to 120s #268</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/272" target="_blank" rel="noopener noreferrer">[web-app] update layout ui - help button, nav menu #272</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/273" target="_blank" rel="noopener noreferrer">[alert,webapp] support delete all alerts at once. #273</a> issue by @ericfrol</li><li><a href="https://github.com/dromara/hertzbeat/pull/276" target="_blank" rel="noopener noreferrer">[web-app] update home background image #276</a></li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/262" target="_blank" rel="noopener noreferrer">[docs] fix extend-http-jsonpath.md parseScript error #262</a> contribute by @woshiniusange .</li><li><a href="https://github.com/dromara/hertzbeat/pull/264" target="_blank" rel="noopener noreferrer">[monitor] update help docs, refactor redis metrics name #264</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/270" target="_blank" rel="noopener noreferrer">[manager] bugfix alert tags is null when tags map key normal value null. #270</a> issue by <a href="https://gitee.com/hello_brother_niu" target="_blank" rel="noopener noreferrer">https://gitee.com/hello_brother_niu</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/275" target="_blank" rel="noopener noreferrer">[alert] bugfix: the alert global preset config do not take effect #275</a> issue by <a href="https://gitee.com/hello_brother_niu" target="_blank" rel="noopener noreferrer">https://gitee.com/hello_brother_niu</a></li></ol><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="have-fun">Have Fun!<a href="#have-fun" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[HertzBeat v1.1.1 is Publish!]]></title>
<link>https://hertzbeat.apache.org/blog/2022/07/10/hertzbeat-v1.1.1</link>
<guid>https://hertzbeat.apache.org/blog/2022/07/10/hertzbeat-v1.1.1</guid>
<pubDate>Sun, 10 Jul 2022 00:00:00 GMT</pubDate>
<description><![CDATA[Friendly Cloud Monitoring Tool. | 易用友好的实时监控工具, 无需Agent, 强大自定义监控能力.]]></description>
<content:encoded><![CDATA[<blockquote><p>Friendly Cloud Monitoring Tool. | 易用友好的实时监控工具, 无需Agent, 强大自定义监控能力.</p></blockquote><p><strong>Home: <a href="https://hertzbeat.com" target="_blank" rel="noopener noreferrer">hertzbeat.com</a></strong> </p><p>Hi guys! HertzBeat v1.1.1 is coming. This version brings custom monitoring enhancements, and the collected metric data can be assigned as a variable to the next collection. Fixed several bugs and improved the overall stable usability.</p><p>Only one docker command is needed to install and experience hertzbeat:
<code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p><p>Thanks to the contributors! 👍👍</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/205" target="_blank" rel="noopener noreferrer">[script] feature update docker base image to openjdk:11.0.15-jre-slim… #205</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/206" target="_blank" rel="noopener noreferrer">[monitor] support use pre collect metrics data to replace next metrics config params #206</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/212" target="_blank" rel="noopener noreferrer">[collector] use basic auth with raw HTTP headers instead of preemptive #212</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/213" target="_blank" rel="noopener noreferrer">[manager,alerter] support wework, dingDing, flyBook webhook url config #213</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/217" target="_blank" rel="noopener noreferrer">[monitor] feature update numeric metrics all contain decimal points #217</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/218" target="_blank" rel="noopener noreferrer">[web-app]feature:toggle [enable and cancel] button #218</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/221" target="_blank" rel="noopener noreferrer">[manager] update define yml file name add prefix "app" or "param" #221</a></li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/198" target="_blank" rel="noopener noreferrer">[update] docker-compose 添加jpa自动执行脚本,删除sql脚本 #198</a> contribute by @DevilX5 .</li><li><a href="https://github.com/dromara/hertzbeat/pull/199" target="_blank" rel="noopener noreferrer">Doc#param names refactor #199</a> contribute by @DevilX5</li><li><a href="https://github.com/dromara/hertzbeat/pull/201" target="_blank" rel="noopener noreferrer">[manager] bugfix oracle performance metrics collect error, update win name #201</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/203" target="_blank" rel="noopener noreferrer">[common] bugfix alert status can not update #203</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/204" target="_blank" rel="noopener noreferrer">[manager] bugfix update windows monitor type name #204</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/210" target="_blank" rel="noopener noreferrer">fix time zone todo issue #210</a> contribute by @djzeng</li><li><a href="https://github.com/dromara/hertzbeat/pull/211" target="_blank" rel="noopener noreferrer">[common] bugfix SnowFlakeId cannot exceed hexadecimal 0x1FFFFFFFFFFFFFF #211</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/215" target="_blank" rel="noopener noreferrer">[manager] 修改监控页面取消监控功能再启动监控导致多生成jobId,原有监控项目并没有真实取消 #215</a> contribute by @yangshihui</li><li><a href="https://github.com/dromara/hertzbeat/pull/220" target="_blank" rel="noopener noreferrer">[warehouse] bugfix exception when tdengine create table SQL contain special char #220</a></li></ol><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><p>Have Fun!</p><hr><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a> is an opensource monitoring and alarm project incubated by <a href="https://dromara.org" target="_blank" rel="noopener noreferrer">Dromara</a> and open sourced by <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, which supports Website, API, PING, Port, Database, OS Monitor etc.<br>
<!-- -->We also provide <strong><a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Monitoring Cloud For Saas</a></strong>, people no longer need to deploy a cumbersome monitoring tool in order to monitor their website resources. <strong><a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Sign in to get started for free</a></strong>.<br>
<!-- -->HertzBeat supports more liberal threshold alarm configuration (calculation expression), supports alarm notification, alarm template, email, DingDing, WeChat FeiShu and WebHook.<br>
<!-- -->Most important is HertzBeat supports <a href="https://hertzbeat.com/docs/advanced/extend-point" target="_blank" rel="noopener noreferrer">Custom Monitoring</a>, just by configuring the YML file, we can customize the monitoring types and metrics what we need.<br>
<!-- -->HertzBeat is modular, <code>manager, collector, scheduler, warehouse, alerter</code> modules are decoupled for easy understanding and custom development.<br>
<!-- -->Welcome to HertzBeat's <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Cloud Environment TanCloud</a> to try and discover more.<br>
<!-- -->Welcome to join us to build hertzbeat together.</p></blockquote><blockquote><p><code>HertzBeat</code>'s multi-type support, easy expansion, low coupling, hope to help developers and micro teams to quickly build their own monitoring tool.</p></blockquote><p><strong>If you like HertzBeat, star us on GitHub</strong></p><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Github</a> <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a><br>
<a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Gitee</a> <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></p>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[HertzBeat Monitoring System v1.1.0 Released! Start Your Monitoring Journey with Just One Command!]]></title>
<link>https://hertzbeat.apache.org/blog/2022/06/22/one-step-up</link>
<guid>https://hertzbeat.apache.org/blog/2022/06/22/one-step-up</guid>
<pubDate>Wed, 22 Jun 2022 00:00:00 GMT</pubDate>
<description><![CDATA[HertzBeat, incubated by Dromara and open-sourced by TanCloud, is an open-source monitoring and alerting project that supports website, API, PING, port, database, site-wide, operating system, middleware monitoring types, and more. It features threshold alarms, alarm notifications (email, webhook, DingTalk, WeChat Work, Feishu bot), and a user-friendly visual interface.]]></description>
<content:encoded><![CDATA[<p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a>, incubated by <a href="https://dromara.org" target="_blank" rel="noopener noreferrer">Dromara</a> and open-sourced by <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, is an open-source monitoring and alerting project that supports website, API, PING, port, database, site-wide, operating system, middleware monitoring types, and more. It features threshold alarms, alarm notifications (email, webhook, DingTalk, WeChat Work, Feishu bot), and a user-friendly visual interface.</p><p><strong>Official Website: <a href="https://hertzbeat.com" target="_blank" rel="noopener noreferrer">hertzbeat.com</a> | <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">tancloud.cn</a></strong></p><p>Hello everyone, HertzBeat v1.1.0 is here! In this version, we've added support for the SNMP protocol and enabled application monitoring for Windows operating systems using SNMP.<br>
<!-- -->Another major change is that we've switched from using MYSQL to H2 database by default for storage, making it easier for users to install and deploy. Now, you can get started with HertzBeat using just a single docker command: <code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code>
Let's Try It!</p><p>Thanks to all contributors of HertzBeat! 👍👍</p><p>Features:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/192" target="_blank" rel="noopener noreferrer">[monitor]feature: Support for SNMP protocol and Windows operating system monitoring #192</a>. Contributed by @ChineseTony</li><li><a href="https://github.com/dromara/hertzbeat/pull/191" target="_blank" rel="noopener noreferrer">[monitor] Default switch to H2 database instead of MYSQL #191</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/184" target="_blank" rel="noopener noreferrer">[manager] Support for English internationalization of monitoring parameters, making internationalization a step closer #184</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/189" target="_blank" rel="noopener noreferrer">[script] Support for amd64 and arm64 versions of the docker image #189</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/163" target="_blank" rel="noopener noreferrer">[monitor]feature: Support for collecting multiple tablespace metrics from Oracle #163</a> Contributed by @brave4Time</li><li><a href="https://github.com/dromara/hertzbeat/pull/193" target="_blank" rel="noopener noreferrer">[monitor] Database tables now have a unified prefix hzb_ #193</a> Issue raised by @shimingxy</li></ol><p>Bugfixes:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/164" target="_blank" rel="noopener noreferrer">[monitor] Fixed an issue where CPU metrics could not be collected on Tencent's CentOS version #164</a> Contributed by @wyt199905.</li><li><a href="https://github.com/dromara/hertzbeat/pull/168" target="_blank" rel="noopener noreferrer">[manager] Fixed an issue with percentage metric collection for Oracle monitoring #168</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/174" target="_blank" rel="noopener noreferrer">[monitor] bugfix: Fixed an issue with Elasticsearch monitoring failing under basic authentication #174</a> Contributed by @weifuqing</li><li><a href="https://github.com/dromara/hertzbeat/pull/182" target="_blank" rel="noopener noreferrer">Fixed an issue where Oracle monitoring failed due to ambiguous database name parameter #182</a> @zklmcookle</li></ol><p>Online at <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><hr><p>Windows Monitor is coming:</p><p><img loading="lazy" src="https://user-images.githubusercontent.com/24788200/174481159-b8a73c87-aff5-4c4c-befb-bd0d26685d71.png" alt="2022-06-19 11:30:57" class="img_ev3q"></p><p>⚠️ ⚠️⚠️⚠️Please note that upgrading to v1.1.0 from other versions requires running the following SQL script. Now, our table names have a unified prefix hzb_prefix.</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert RENAME TO hzb_alert;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define RENAME TO hzb_alert_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define_monitor_bind RENAME TO hzb_alert_define_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE monitor RENAME TO hzb_monitor;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_receiver RENAME TO hzb_notice_receiver;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_rule RENAME TO hzb_notice_rule;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param RENAME TO hzb_param;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param_define RENAME TO hzb_param_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag RENAME TO hzb_tag;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag_monitor_bind RENAME TO hzb_tag_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">commit;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Have Fun!</p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="v110">V1.1.0<a href="#v110" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Home: hertzbeat.com | tancloud.cn</p><p>Hi guys! HertzBeat v1.1.0 is coming. This version we support snmp protocol and use snmp to collect windows metrics.<br>
<!-- -->Another major change is that we use the H2 database by default to replace the MYSQL database as storage to facilitate the installation and deployment of users. Now only one docker command is needed to install and experience hertzbeat: <code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code>
Let's Try It!</p><p>Thanks to the contributors! 👍👍</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/192" target="_blank" rel="noopener noreferrer">[monitor]feature: support snmp collect protocol and windows monitor type #192</a>. contribute by @ChineseTony</li><li><a href="https://github.com/dromara/hertzbeat/pull/191" target="_blank" rel="noopener noreferrer">[monitor]change default database mysql to h2 #191</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/184" target="_blank" rel="noopener noreferrer">[manager]support monitor params name i18n #184</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/189" target="_blank" rel="noopener noreferrer">[script]build multi cpu arch hertzbeat docker version #189</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/163" target="_blank" rel="noopener noreferrer">[monitor]feature: support oracle multi tablespaces #163</a> contribute by @brave4Time</li><li><a href="https://github.com/dromara/hertzbeat/pull/193" target="_blank" rel="noopener noreferrer">[monitor]database tables append prefix hzb_ #193</a> issue from @shimingxy</li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/164" target="_blank" rel="noopener noreferrer">[monitor]fix can not collect cpu metrics in tencent centos #164</a> contribute by @wyt199905 .</li><li><a href="https://github.com/dromara/hertzbeat/pull/168" target="_blank" rel="noopener noreferrer">[manager]fix oracle config yml percentage error #168</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/174" target="_blank" rel="noopener noreferrer">[monitor] bugfix: fix elasticsearch collect error when need basic auth #174</a> contribute by @weifuqing</li><li><a href="https://github.com/dromara/hertzbeat/pull/182" target="_blank" rel="noopener noreferrer">Change the Oracle database name to the service name to reduce ambiguity #182</a> @zklmcookle</li></ol><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><hr><p>Windows Monitor coming:</p><img loading="lazy" width="1444" alt="2022-06-19 11 30 57" src="https://user-images.githubusercontent.com/24788200/174481159-b8a73c87-aff5-4c4c-befb-bd0d26685d71.png" class="img_ev3q"><p>⚠️ ⚠️⚠️⚠️Attention other version upgrade to v1.1.0 need run sql script. Now the tables name has hzb_ prefix.</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert RENAME TO hzb_alert;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define RENAME TO hzb_alert_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define_monitor_bind RENAME TO hzb_alert_define_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE monitor RENAME TO hzb_monitor;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_receiver RENAME TO hzb_notice_receiver;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_rule RENAME TO hzb_notice_rule;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param RENAME TO hzb_param;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param_define RENAME TO hzb_param_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag RENAME TO hzb_tag;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag_monitor_bind RENAME TO hzb_tag_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">commit;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Have Fun!</p><hr><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a>, incubated by <a href="https://dromara.org" target="_blank" rel="noopener noreferrer">Dromara</a> and open-sourced by <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, is an open-source monitoring and alerting project that supports monitoring types such as websites, APIs, PING, ports, databases, operating systems, etc., with a user-friendly and easy-to-use visual interface.<br>
<!-- -->We also offer a <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">SAAS cloud monitoring version</a> for small and medium teams and individuals, eliminating the need to deploy a complicated monitoring system to monitor their web resources. <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">Sign up to start</a> your monitoring journey for free.<br>
<!-- -->HertzBeat supports custom monitoring; by configuring the YML file, we can customize the required monitoring types and metrics to meet common personalized needs.<br>
<!-- -->HertzBeat is modular, with <code>manager, collector, scheduler, warehouse, alerter</code> modules decoupled, making it easy to understand and customize development.<br>
<!-- -->HertzBeat supports more flexible alarm configurations (calculation expressions) and alarm notifications, including alarm templates, emails, DingTalk, WeChat, Feishu, etc., for timely delivery of notifications.<br>
<!-- -->Welcome to log in to HertzBeat's <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">cloud environment TanCloud</a> to try and discover more.<br>
<!-- -->We are in rapid iteration and welcome participation in co-building the open-source ecosystem.</p></blockquote><blockquote><p>HertzBeat's support for multiple types, easy expansion, and low coupling aims to help developers and small and medium teams quickly build their own monitoring systems.</p></blockquote><p><strong>Repository Addresses</strong></p><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Github</a> <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a><br>
<a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Gitee</a> <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></p>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[Cloud Monitoring System HertzBeat v1.1.0 Released! Start Your Monitoring Journey with Just One Command!]]></title>
<link>https://hertzbeat.apache.org/blog/2022/06/19/hertzbeat-v1.1.0</link>
<guid>https://hertzbeat.apache.org/blog/2022/06/19/hertzbeat-v1.1.0</guid>
<pubDate>Sun, 19 Jun 2022 00:00:00 GMT</pubDate>
<description><![CDATA[HertzBeat, incubated by Dromara and open-sourced by TanCloud, is an open-source monitoring and alerting project that supports various monitoring types such as websites, APIs, PING, ports, databases, entire sites, operating systems, middleware, etc. It features threshold alarms, notification alerts (email, webhook, DingTalk, WeChat Work, Lark robots), and a user-friendly visual interface.]]></description>
<content:encoded><![CDATA[<p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a>, incubated by <a href="https://dromara.org" target="_blank" rel="noopener noreferrer">Dromara</a> and open-sourced by <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, is an open-source monitoring and alerting project that supports various monitoring types such as websites, APIs, PING, ports, databases, entire sites, operating systems, middleware, etc. It features threshold alarms, notification alerts (email, webhook, DingTalk, WeChat Work, Lark robots), and a user-friendly visual interface.</p><p><strong>Official Website: <a href="https://hertzbeat.com" target="_blank" rel="noopener noreferrer">hertzbeat.com</a> | <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">tancloud.cn</a></strong></p><p>Hello everyone, HertzBeat v1.1.0 is released! In this version, we've added support for the SNMP protocol and implemented application monitoring for Windows operating systems using SNMP.
Another significant change is our default switch to using the H2 database instead of MYSQL for storage, making it easier for users to install and deploy. Now, you can install and experience HertzBeat with just a single Docker command: <code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code>
Let's Try It!</p><p>Thanks to all HertzBeat contributors! 👍👍</p><p>Features:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/192" target="_blank" rel="noopener noreferrer">[monitor]feature: Support for SNMP protocol and Windows OS monitoring #192</a>. Contributed by @ChineseTony</li><li><a href="https://github.com/dromara/hertzbeat/pull/191" target="_blank" rel="noopener noreferrer">[monitor] Default use of H2 database instead of MYSQL #191</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/184" target="_blank" rel="noopener noreferrer">[manager] Support for internationalization of monitoring parameters, making internationalization more accessible #184</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/189" target="_blank" rel="noopener noreferrer">[script] Support for amd64 and arm64 versions of Docker images #189</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/163" target="_blank" rel="noopener noreferrer">[monitor]feature: Support for collecting multiple tablespaces metrics from Oracle #163</a> Contributed by @brave4Time</li><li><a href="https://github.com/dromara/hertzbeat/pull/193" target="_blank" rel="noopener noreferrer">[monitor] Unified prefix "hzb_" added to database tables #193</a> Issue from @shimingxy</li></ol><p>Bugfixes:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/164" target="_blank" rel="noopener noreferrer">[monitor] Fix for the inability to collect CPU metrics on Tencent's CentOS version #164</a> Contributed by @wyt199905.</li><li><a href="https://github.com/dromara/hertzbeat/pull/168" target="_blank" rel="noopener noreferrer">[manager] Fix for Oracle monitoring percentage metric collection issue #168</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/174" target="_blank" rel="noopener noreferrer">[monitor] bugfix: Fix for Elasticsearch monitoring failure under basic authentication #174</a> Contributed by @weifuqing</li><li><a href="https://github.com/dromara/hertzbeat/pull/182" target="_blank" rel="noopener noreferrer">Fix for monitoring failure due to ambiguous Oracle monitoring parameter "database name" #182</a> @zklmcookle</li></ol><p>Online at <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><hr><p>Windows Monitor coming:</p><p><img loading="lazy" src="https://user-images.githubusercontent.com/24788200/174481159-b8a73c87-aff5-4c4c-befb-bd0d26685d71.png" alt="2022-06-19 11:30:57" class="img_ev3q"></p><p>⚠️ ⚠️⚠️⚠️Please note that upgrading to v1.1.0 from other versions requires running the following SQL script. Now, our table names have a unified prefix "hzb_prefix".</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert RENAME TO hzb_alert;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define RENAME TO hzb_alert_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define_monitor_bind RENAME TO hzb_alert_define_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE monitor RENAME TO hzb_monitor;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_receiver RENAME TO hzb_notice_receiver;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_rule RENAME TO hzb_notice_rule;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param RENAME TO hzb_param;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param_define RENAME TO hzb_param_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag RENAME TO hzb_tag;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag_monitor_bind RENAME TO hzb_tag_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">commit;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Have Fun!</p><hr><h2 class="anchor anchorWithStickyNavbar_LWe7" id="v110">V1.1.0<a href="#v110" class="hash-link" aria-label="Direct link to heading" title="Direct link to heading"></a></h2><p>Home: hertzbeat.com | tancloud.cn</p><p>Hi guys! HertzBeat v1.1.0 is coming. This version we support snmp protocol and use snmp to collect windows metrics.<br>
<!-- -->Another major change is that we use the H2 database by default to replace the MYSQL database as storage to facilitate the installation and deployment of users. Now only one docker command is needed to install and experience hertzbeat: <code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code>
Let's Try It!</p><p>Thanks to the contributors! 👍👍</p><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/192" target="_blank" rel="noopener noreferrer">[monitor]feature: support snmp collect protocol and windows monitor type #192</a>. contribute by @ChineseTony</li><li><a href="https://github.com/dromara/hertzbeat/pull/191" target="_blank" rel="noopener noreferrer">[monitor]change default database mysql to h2 #191</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/184" target="_blank" rel="noopener noreferrer">[manager]support monitor params name i18n #184</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/189" target="_blank" rel="noopener noreferrer">[script]build multi cpu arch hertzbeat docker version #189</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/163" target="_blank" rel="noopener noreferrer">[monitor]feature: support oracle multi tablespaces #163</a> contribute by @brave4Time</li><li><a href="https://github.com/dromara/hertzbeat/pull/193" target="_blank" rel="noopener noreferrer">[monitor]database tables append prefix hzb_ #193</a> issue from @shimingxy</li></ol><p>Bugfix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/164" target="_blank" rel="noopener noreferrer">[monitor]fix can not collect cpu metrics in tencent centos #164</a> contribute by @wyt199905 .</li><li><a href="https://github.com/dromara/hertzbeat/pull/168" target="_blank" rel="noopener noreferrer">[manager]fix oracle config yml percentage error #168</a></li><li><a href="https://github.com/dromara/hertzbeat/pull/174" target="_blank" rel="noopener noreferrer">[monitor] bugfix: fix elasticsearch collect error when need basic auth #174</a> contribute by @weifuqing</li><li><a href="https://github.com/dromara/hertzbeat/pull/182" target="_blank" rel="noopener noreferrer">Change the Oracle database name to the service name to reduce ambiguity #182</a> @zklmcookle</li></ol><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><hr><p>Windows Monitor coming:</p><img loading="lazy" width="1444" alt="2022-06-19 11 30 57" src="https://user-images.githubusercontent.com/24788200/174481159-b8a73c87-aff5-4c4c-befb-bd0d26685d71.png" class="img_ev3q"><p>⚠️ ⚠️⚠️⚠️Attention other version upgrade to v1.1.0 need run sql script. Now the tables name has hzb_ prefix.</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert RENAME TO hzb_alert;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define RENAME TO hzb_alert_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE alert_define_monitor_bind RENAME TO hzb_alert_define_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE monitor RENAME TO hzb_monitor;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_receiver RENAME TO hzb_notice_receiver;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE notice_rule RENAME TO hzb_notice_rule;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param RENAME TO hzb_param;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE param_define RENAME TO hzb_param_define;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag RENAME TO hzb_tag;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ALTER TABLE tag_monitor_bind RENAME TO hzb_tag_monitor_bind;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">commit;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Have Fun!</p><p>Have Fun!</p><hr><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a>, incubated by <a href="https://dromara.org" target="_blank" rel="noopener noreferrer">Dromara</a> and open-sourced by <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, is an open-source project supporting monitoring for websites, APIs, PING, ports, databases, operating systems, and more, with a user-friendly visual interface.<br>
<!-- -->We also offer a <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">SAAS cloud monitoring version</a>, allowing small and medium teams and individuals to start monitoring their web resources without deploying a complicated monitoring system, simply <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">log in to start</a> your monitoring journey for free.<br>
<!-- -->HertzBeat supports custom monitoring; you can customize the monitoring types and metrics you need through configuration of the YML file to meet common personalized needs.<br>
<!-- -->HertzBeat is modular, with <code>manager, collector, scheduler, warehouse, alerter</code> modules decoupled, facilitating understanding and custom development.<br>
<!-- -->HertzBeat supports more flexible alarm configurations (calculation expressions), notification alerts, templates, and real-time delivery via email, DingTalk, WeChat, Lark, etc.<br>
<!-- -->Welcome to try and discover more in HertzBeat's <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">cloud environment TanCloud</a>.<br>
<!-- -->We are rapidly iterating and welcome participation to join in co-building the open-source ecosystem.</p></blockquote><blockquote><p>HertzBeat's support for multiple types, easy expansion, and low coupling hopes to help developers and small and medium teams quickly build their own monitoring systems.</p></blockquote><p><strong>Repository Addresses</strong></p><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Github</a> <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a><br>
<a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Gitee</a> <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></p>]]></content:encoded>
<category>opensource</category>
</item>
<item>
<title><![CDATA[Cloud Monitoring System HertzBeat v1.0 Officially Released]]></title>
<link>https://hertzbeat.apache.org/blog/2022/06/01/hertzbeat-v1.0</link>
<guid>https://hertzbeat.apache.org/blog/2022/06/01/hertzbeat-v1.0</guid>
<pubDate>Wed, 01 Jun 2022 00:00:00 GMT</pubDate>
<description><![CDATA[HertzBeat, incubated by Dromara and open-sourced by TanCloud, is an open-source monitoring and alerting project that supports a variety of monitoring types including websites, APIs, PING, ports, databases, full-site, operating systems, middleware, etc. It supports threshold alarms and notification alerts (email, webhook, DingTalk, WeCom, Feishu robots) and has an easy-to-use, friendly visual operation interface.]]></description>
<content:encoded><![CDATA[<p>HertzBeat, incubated by Dromara and open-sourced by TanCloud, is an open-source monitoring and alerting project that supports a variety of monitoring types including websites, APIs, PING, ports, databases, full-site, operating systems, middleware, etc. It supports threshold alarms and notification alerts (email, webhook, DingTalk, WeCom, Feishu robots) and has an easy-to-use, friendly visual operation interface.</p><p>Official Website: hertzbeat.com | tancloud.cn</p><p>From v1.0-beta.1 to v1.0-beta.8, after multiple iterations and improvements, we are excited to announce the official release of HertzBeat v1.0.</p><p>We would like to thank the HertzBeat Contributors for their contributions since version beta.1 and the community and users for their support. This version adds support for Redis monitoring (contributed by @gcdd1993), covering a comprehensive range of performance indicators such as Redis memory and CPU, to fully monitor Redis. Multiple bugs have been fixed to further enhance stability.</p><table><tbody><tr><td align="center"><a href="https://github.com/tomsun28" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/24788200?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>tomsun28</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=tomsun28" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/commits?author=tomsun28" target="_blank" rel="noopener noreferrer" title="Documentation">📖</a> <a href="#design-tomsun28" title="Design">🎨</a></td><td align="center"><a href="https://github.com/wang1027-wqh" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/71161318?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>会编程的王学长</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=wang1027-wqh" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/commits?author=wang1027-wqh" target="_blank" rel="noopener noreferrer" title="Documentation">📖</a> <a href="#design-wang1027-wqh" title="Design">🎨</a></td><td align="center"><a href="https://www.maxkey.top/" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/1563377?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>MaxKey</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=shimingxy" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="#design-shimingxy" title="Design">🎨</a> <a href="#ideas-shimingxy" title="Ideas, Planning, &amp; Feedback">🤔</a></td><td align="center"><a href="https://blog.gcdd.top/" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/26523525?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>观沧海</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=gcdd1993" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="#design-gcdd1993" title="Design">🎨</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3Agcdd1993" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td><td align="center"><a href="https://github.com/a25017012" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/32265356?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>yuye</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=a25017012" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/commits?author=a25017012" target="_blank" rel="noopener noreferrer" title="Documentation">📖</a></td><td align="center"><a href="https://github.com/jx10086" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/5323228?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>jx10086</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=jx10086" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3Ajx10086" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td><td align="center"><a href="https://github.com/winnerTimer" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/76024658?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>winnerTimer</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=winnerTimer" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3AwinnerTimer" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td></tr><tr><td align="center"><a href="https://github.com/goo-kits" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/13163673?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>goo-kits</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=goo-kits" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3Agoo-kits" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td><td align="center"><a href="https://github.com/brave4Time" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/105094014?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>brave4Time</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=brave4Time" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3Abrave4Time" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td><td align="center"><a href="https://github.com/walkerlee-lab" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/8426753?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>WalkerLee</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=walkerlee-lab" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3Awalkerlee-lab" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td><td align="center"><a href="https://github.com/fullofjoy" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/30247571?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>jianghang</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=fullofjoy" target="_blank" rel="noopener noreferrer" title="Code">💻</a> <a href="https://github.com/tomsun28/hertzbeat/issues?q=author%3Afullofjoy" target="_blank" rel="noopener noreferrer" title="Bug reports">🐛</a></td><td align="center"><a href="https://github.com/ChineseTony" target="_blank" rel="noopener noreferrer"><img loading="lazy" src="https://avatars.githubusercontent.com/u/24618786?v=4?s=100" width="100px;" alt="" class="img_ev3q"><br><sub><b>ChineseTony</b></sub></a><br><a href="https://github.com/tomsun28/hertzbeat/commits?author=ChineseTony" target="_blank" rel="noopener noreferrer" title="Code">💻</a></td></tr></tbody></table><p>Feature:</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/142" target="_blank" rel="noopener noreferrer">[monitor] feature: support redis protocol #142</a> contribute by @gcdd1993</li><li>Copyright &amp; NOTICE contribute by @shimingxy</li><li><a href="https://github.com/dromara/hertzbeat/pull/144" target="_blank" rel="noopener noreferrer">[alerter]bugfix: support system alert trigger time #144</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/146" target="_blank" rel="noopener noreferrer">[collector]feature: reuse redis connection cache #146</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/159" target="_blank" rel="noopener noreferrer">[collector]handle sensitive info such as account and password in log #159</a> idea from @goo-kits</li><li><a href="https://github.com/dromara/hertzbeat/pull/137" target="_blank" rel="noopener noreferrer">Feature add zookeeper help Doc #137</a> contributr by @wang1027-wqh</li></ol><p>Bug fix.</p><ol><li><a href="https://github.com/dromara/hertzbeat/pull/131" target="_blank" rel="noopener noreferrer">[monitor]bugfix: fix load resource bundle error when local en.HK #131</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/132" target="_blank" rel="noopener noreferrer">[web-app]bugfix:fix side menu invisible when theme is dark #132</a>.</li><li><a href="https://github.com/dromara/hertzbeat/pull/140" target="_blank" rel="noopener noreferrer">[monitor]bugfix: fix only one filter label can be set when notification #140</a>. issue by @daqianxiaoyao</li><li><a href="https://github.com/dromara/hertzbeat/pull/150" target="_blank" rel="noopener noreferrer">[td-engine store]bugfix: fix log #150</a>. contribute by @ChineseTony</li><li><a href="https://github.com/dromara/hertzbeat/pull/153" target="_blank" rel="noopener noreferrer">[collector]bugfix: fix warehouse data queue consume error #153</a>. issue by @daqianxiaoyao</li><li><a href="https://github.com/dromara/hertzbeat/pull/157" target="_blank" rel="noopener noreferrer">[web-app]bugfix:fix input blocking when input error in dark theme #157</a>. issue by @ConradWen</li></ol><p><strong>Full Changelog</strong>: <a href="https://github.com/dromara/hertzbeat/compare/v1.0-beta.8...v1.0" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat/compare/v1.0-beta.8...v1.0</a></p><p>Online <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">https://console.tancloud.cn</a>.</p><hr><p>Redis monitor is coming:</p><img loading="lazy" width="1910" alt="2022-05-29 20 23 58" src="https://user-images.githubusercontent.com/24788200/170868079-325ccc08-165f-4d0e-9ebb-18b0b5c9db3f.png" class="img_ev3q"><img loading="lazy" width="959" alt="2022-05-29 20 24 21" src="https://user-images.githubusercontent.com/24788200/170868094-3c4de70f-934a-4a13-ae1a-0744c30f14f3.png" class="img_ev3q"><blockquote><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">HertzBeat</a>, incubated by <a href="https://dromara.org" target="_blank" rel="noopener noreferrer">Dromara</a> and open-sourced by <a href="https://tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, is an open-source monitoring and alerting project with a user-friendly visual interface that supports monitoring types such as websites, APIs, PING, ports, databases, operating systems, and more.
Of course, we also provide a corresponding <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">SAAS cloud monitoring version</a>, so small and medium-sized teams and individuals no longer need to deploy a cumbersome monitoring system to monitor their website resources; you can <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">log in</a> to start monitoring for free.</p></blockquote><blockquote><p>HertzBeat supports custom monitoring; by configuring the YML file, we can customize the required monitoring types and metrics to meet common personalized needs.
HertzBeat is modular, with manager, collector, scheduler, warehouse, alerter modules decoupled, making it easy to understand and customize for development.
HertzBeat supports more flexible alarm configurations (calculation expressions), supports alarm notifications, alarm templates, and timely delivery of notifications via email, DingTalk, WeChat, Feishu, etc.
Feel free to log in to HertzBeat's cloud environment, <a href="https://console.tancloud.cn" target="_blank" rel="noopener noreferrer">TanCloud</a>, to try it out and discover more.
We are rapidly iterating and welcome participation in joining and contributing to the open-source ecosystem.</p></blockquote><blockquote><p>The multi-type support, easy expansion, and low coupling of <code>HertzBeat</code> aim to help developers and small to medium-sized teams quickly build their own monitoring systems.</p></blockquote><p><strong>Repository url</strong></p><p><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Github</a> <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a><br>
<a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">Gitee</a> <a href="https://gitee.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://gitee.com/dromara/hertzbeat</a></p>]]></content:encoded>
<category>opensource</category>
</item>
</channel>
</rss>