5分钟内使用Hertzbeat监视SpringBoot2指标
#开源 #java #spring #monitoring

使用开源实时监控工具Hertzbeat来监视和警告SpringBoot2应用程序,并在5分钟内完成!

Hertzbeat简介

Hertzbeat是带有定制监控器和无代理的开源,实时监视工具。

监视+Alerter+Notify 全部。支持监视Web服务,数据库,OS,中间件,云本地,网络等。

更灵活的阈值规则(计算表达式),及时通知通过Discord Slack Telegram Email Email DingDing WeChat FeiShu Webhook Webhook SMS

我们制作的协议,例如Http, Jmx, Ssh, Snmp, Jdbc可配置,您只需要在线配置YML即可收集所需的任何指标。


您是否相信只需在线配置?

HertzBeat强大的自定义定义,多型支持,易于扩展,低耦合,希望帮助开发人员和微型团队快速建立自己的监视系统。

github:https://github.com/dromara/hertzbeat

5分钟内使用Hertzbeat监视SpringBoot2指标

先决条件,您已经拥有SpringBoot2应用程序环境和Hertzbeat环境。

1. actuator指示器端点在SpringBoot2应用程序端公开,该端将提供指标端点数据。

  1. 开放的Springboot执行器端点露出metrics health env指示器接口
management:
   endpoints:
     web:
       exposure:
         include:
           - 'metrics'
           - 'health'
           - 'env'
     enabled-by-default: on
  1. 重新启动后,测试访问指示器接口ip:port/actuator是否具有响应JSON数据如下:
{
   "_links": {
     "self": {
       "href": "http://localhost:1157/actuator",
       "templated": false
     },
     "health-path": {
       "href": "http://localhost:1157/actuator/health/{*path}",
       "templated": true
     },
     "health": {
       "href": "http://localhost:1157/actuator/health",
       "templated": false
     },
     "env": {
       "href": "http://localhost:1157/actuator/env",
       "templated": false
     },
     "env-toMatch": {
       "href": "http://localhost:1157/actuator/env/{toMatch}",
       "templated": true
     },
     "metrics-requiredMetricName": {
       "href": "http://localhost:1157/actuator/metrics/{requiredMetricName}",
       "templated": true
     },
     "metrics": {
       "href": "http://localhost:1157/actuator/metrics",
       "templated": false
     }
   }
}

在Hertzbeat监视UI中添加SpringBoot2应用程序监视

  1. 单击添加SpringBoot2监视

路径:菜单 - >应用程序服务监视 - > SpringBoot2->添加SpringBoot2监视

Image description

  1. 配置新监视SpringBoot2
  2. 所需的参数

填写SpringBoot2应用程序 PEER IP 服务端口(默认8080),帐户密码等。最后单击确定添加。
有关其他参数,例如收集间隔超时期等,请参阅帮助文档https://hertzbeat.com/docs/help/

Image description

  1. 完整 - 现在,我们添加了SpringBoot2应用程序的监视,请检查监视列表以查看我们的添加。

Image description

  1. 单击操作 - > 监视详细信息图标监视列表项目以浏览SpringBoot2应用程序的实时监视指示器数据。

Image description

  1. 单击监视历史详细信息选项卡浏览Springboot2 Application的历史监视指标数据图。

Image description

完成了!完毕!它不需要我们部署代理商或各种繁琐的操作,不是很简单

  • 只有一个步骤来配置Hertzbeat监视页面上的IP端口并添加SpringBoot2应用程序监视

通过上面,我们完成了SpringBoot2应用程序的监视。我们可以随时在Hertzbeat中检查SpringBoot2应用程序的各种指标的状态和可用性。


当然,不可能实时手动检查指标。监视通常伴随警报阈值。当SpringBoot2应用程序的性能指标超过我们的阈值或SpringBoot2应用程序本身异常时,我们可以立即通知我们的相应负责人。负责人会收到通知并处理通知。 ,这是一个完整的监视和警报过程。

接下来,我们将逐步演示如何在Hertzbeat系统中配置阈值警报通知。当SpringBoot2应用程序的指标异常时,我们将在时间上通知我们

3.在Hertzbeat系统中添加SpringBoot2应用指示器阈值警报

  1. 为重要指示器配置警报阈值

路径:菜单 - >阈值规则 - >添加阈值

  • 选择配置的指示对象。 SpringBoot2应用程序监视主要关注堆栈内存线和其他相关指标。例如,我们设置指示器threads-> threads的阈值。当runnable状态中的线程数大于300时发出警报时。
  • 在这里,我们配置要在此指示器的statesize时发送警报,警报级别为警告警报,该警报将被触发,该警报将被触发3次,特别是如下所示。

Image description

Image description

  1. 添加消息通知收件人

配置接收器以让警报消息知道要发送谁以及如何发送。

路径:菜单 - >警报通知 - >警报收件人 - >添加新收件人

消息通知方法支持电子邮件,dingtalk,微信工作,feishu,webhook,sms 等。在这里,我们以常用的dingtalk为例。

starmand Notification->ã新收件人 - >ã选择dingtalk Robot Notification Metage方法 - >âset dingtalk robotAccess_tokenã-

Image description

  1. 配置关联的警报通知策略 - [添加通知策略] - > [将收件人设置为设置] - > [ok]

配置警报通知策略以将警报消息与接收者绑定,以便您可以决定发送到哪些警报。

Image description

完成,现在等待警告消息来了。丁丁丁

[HertzBeat warning notification]
Alarm target object: springboot2.threads.size
Affiliated monitoring ID: 483783444839322
Belonging monitoring name: SPRINGBOOT2_localhost
Alarm level: warning alarm
Alarm trigger time: 2023-03-22 21:13:44
Content details: The springboot2 service's runnable state threads num is over 300, now is 444.

概括

这篇实用的文章带我们来体验了如何使用开源实时监控工具HertzBeat监视SpringBoot2应用程序指示器数据。我们可以发现集成monitoring-alarm-notification的Hertzbeat在操作和使用方面更方便,只需在页面上单击SpringBoot2应用程序,可以将SpringBoot2应用程序包含在监视和警报通知中,以及部署多个组件和编写配置文件的繁琐操作不再需要。

只需要一个docker命令来安装和体验心跳:

docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat

更加强大

通过上面的简单步骤,我们已经意识到了SpringBoot2的监视,但是其中内置的指示器无法满足需求。我们可以自定义和监视SpringBoot2的更多指标吗?答案当然是是的,通过监视定义> springboot2 在页面上,您可以通过编辑以下YML配置文件来自定义和修改要监视的性能指标随时。

Image description

什么是Hertzbeat?

HertzBeat是带有自定义监护剂和代理的开源,实时监控工具。


Monitor+Alerter+Notify 全部。支持监视Web服务,数据库,OS,中间件,云本地,网络等。

更灵活的阈值规则(计算表达式),及时通知通过Discord Slack Telegram Email Email DingDing WeChat FeiShu Webhook Webhook SMS

我们制作的协议,例如Http, Jmx, Ssh, Snmp, Jdbc可配置,您只需要在线配置YML即可收集所需的任何指标。


您是否相信只需在线配置?

HertzBeat强大的自定义定义,多型支持,易于扩展,低耦合,希望帮助开发人员和微型团队快速建立自己的监视系统。


支持

  • 站点监视器,端口可用性,HTTP API,PING连接,JVM,SiteMap完整站点,SSL证书,Springboot,FTP服务器
  • mysql,Postgresql,Mariadb,Redis,Elasticsearch,SQLServer,Oracle,Mongodb,Damon,OpenGauss,Clickhouse,clickhouse,iotdb,redis cluster
  • Linux,Ubuntu,Centos,Windows
  • tomcat,Nacos,Zookeeper,RabbitMQ,Flink,Kafka,Shenyu,DynamiTCTP,Jetty,Activemq
  • kubernetes,docker
  • 华为开关,HPE开关,TP-Link Switch,Cisco Switch
  • 以及您的自定义监控。
  • 通知支持Discord Slack Telegram Mail Pinning WeChat FlyBook SMS Webhook

github:https://github.com/dromara/hertzbeat

gitee:https://gitee.com/dromara/hertzbeat