5分钟搞定 HertzBeat 对物联网数据库 IoTDB 监控实践
使用 HertzBeat 对物联网数据库 IoTDB 进行监控实践,5分钟搞定!
IoTDB 介绍
Apache IoTDB (Internet of Things Database) 是一款时序数据库管理系统,可以为用户提供数据收集、存储和分析等服务。
IoTDB由于其轻量级架构、高性能和高可用的特性,以及与 Hadoop 和 Spark 生态的无缝集成,满足了工业 IoT 领域中海量数据存储、高吞吐量数据写入和复杂数据查询分析的需求。
HertzBeat 介绍
HertzBeat 是一款开源,易用友好的实时监控系统,无需Agent,拥有强大自定义监控能力。
支持对应用服务,数据库,操作系统,中间件,云原生等监控,阈值告警,告警通知(邮件微信钉钉飞书)。
HertzBeat 的强大自定义,多类型支持,易扩展,低耦合,希望能帮助开发者和中小团队快速搭建自有监控系统。
在 HertzBeat 5分钟搞定监控 IoTDB
操作前提,您已拥有 IoTDB 环境和 HertzBeat 环境。
一. 在 IoTDB 端开启metrics
功能,它将提供 prometheus metrics 形式的接口数据。
- metric 采集默认是关闭的,需要先到
conf/iotdb-metric.yml
中修改参数打开后重启 server
# 是否启动监控模块,默认为false enableMetric: true # 数据提供方式,对外部通过jmx和prometheus协议提供metrics的数据, 可选参数:[JMX, PROMETHEUS, IOTDB],IOTDB是默认关闭的。 metricReporterList: - JMX - PROMETHEUS
- 重启 IoTDB, 打开浏览器或者用curl 访问 http://ip:9091/metrics, 就能看到metric数据了。
二. 在 HertzBeat 监控页面添加 IoTDB 监控
- 点击新增IoTDB监控
路径:菜单 -> 数据库监控 -> IoTDB监控 -> 新增IoTDB监控
- 配置监控IoTDB所需参数
在监控页面填写 IoTDB 服务IP,监控端口(默认9091),最后点击确定添加即可。
其他参数如采集间隔,超时时间等可以参考帮助文档 https://hertzbeat.com/docs/help/iotdb/
完成✅,现在我们已经添加好对 IoTDB 的监控了,查看监控列表即可看到我们的添加项。
- 点击监控列表项的操作->监控详情图标 即可浏览 IoTDB的实时监控指标数据。
- 点击监控历史详情TAB 即可浏览 IoTDB的历史监控指标数据图表📈。
完成DONE!通过上面几步,总结起来其实也就是两步
- 一步开启 IoTDB 端
metrics
功能 - 另一步在 HertzBeat 监控页面配置IP端口添加监控即可
这样我们就完成了对 IoTDB 的监控,我们可以随时查看监控详情指标信息来观测其服务状态,但人不可能是一直去看,总有要休息的时候,监控往往伴随着告警,当监控指标发生异常,监控系统需要能及时通知到负责人
接下来我们就来一步一步教您配置 HertzBeat 系统里的阈值告警通知
三. 在 HertzBeat 系统添加 IoTDB 指标阈值告警
- 对某个重要指标配置阈值告警
路径:菜单 -> 告警阈值 -> 新增阈值
- 选择配置的指标对象,IotDB监控有非常多的指标,其中有个指标关系到节点的状态
cluster_node_status
->status
(节点状态,1=online 2=offline)。 - 这里我们就配置当此指标
status==2
时发出告警,告警级别为紧急告警,一次即触发,具体如下图。
- 新增消息通知接收人
路径:菜单 -> 告警通知 -> 告警接收人 -> 新增接收人
消息通知方式支持 邮件,钉钉,企业微信,飞书,WebHook,短信等,我们这里以常用的钉钉为例。
- 参照此帮助文档 https://hertzbeat.com/docs/help/alert_dingtalk 在钉钉端配置机器人,设置安全自定义关键词
HertzBeat
,获取对应access_token
值。 - 在 HertzBeat 配置接收人参数如下。
【告警通知】->【新增接收人】 ->【选择钉钉机器人通知方式】->【设置钉钉机器人ACCESS_TOKEN】-> 【确定】
- 配置关联的告警通知策略⚠️ 【新增通知策略】-> 【将刚设置的接收人关联】-> 【确定】
完毕,现在坐等告警消息过来了。叮叮叮叮
[HertzBeat告警通知] 告警目标对象 : iotdb.cluster_node_status.status 所属监控ID : 205540620349696 所属监控名称 : IOTDB_localhost 告警级别 : 紧急告警 告警触发时间 : 2023-01-05 22:17:06 内容详情 : 监控到 IOTDB 节点 127.0.0.1 状态 OFFLINE, 请及时处理。
小结
这篇实践文章带我们体验了如果使用 HertzBeat 监控 IoTDB 数据库指标数据,可以发现将 监控-告警-通知 集一体的 HertzBeat 在操作与使用方面更加的便捷,在页面上简单点一点就能把 IoTDB 纳入监控,再也不需要部署多个组件,写多个有门槛的YML配置文件了。
IoTDB Github: https://github.com/apache/iotdb
HertzBeat Github: https://github.com/dromara/hertzbeat
欢迎了解使用Star支持哦!
只需要一条docker命令即可安装体验heartbeat :
docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat
注意⚠️HertzBeat v1.2.3 版本支持 IoTDB v0.12 v0.13, 由于其v1.0刚发布, 暂未对此版本全部指标兼容。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
【团队效率提升】Python-PyWebIO介绍
作者:京东零售 关键 Q&A快速了解PyWebIO Q:首先,什么是PyWebIO? A:PyWebIO提供了一系列命令式的交互函数,能够让咱们用只用Python就可以编写 Web 应用, 不需要编写前端页面和后端接口, 让简易的UI开发效率大大提高(本人非研发,用词可能不妥,大家轻点喷) Q:其次,我们能用来干嘛?? 这对一个团队的效率提升有什么作用?? A:Pywebio的作用在于让咱们可以快速的开发一个带有UI界面的,支持用户输入的,以既定的逻辑输出结果的应用。 那么,我们是不是可以将团队内一些机械性的数据处理,数据异动分析等的工作以既定逻辑的方式通过Pywebio输出一个可复用的应用给大家使用呢? 当然,日常的数据运营过程中,咱们肯定不是面对着一成不变的case。 那么,我们是不是可以用不同参数输入的方式来达到一定的泛用性拓展呢? 只要,case和case之间的底层逻辑是一致的,我们就可以用同一套逻辑,不同的入参来达到不同结果输出的获取。 Exampl 倘若,我们每天都有一项工作,每天对着一份又一份业务反馈的订单,然后部门需要对着这些订单本身进行一个初步的风险分层,...
- 下一篇
SREWorks v1.4 版本发布 | 离线安装&前端重构
在v1.3版本之后,SREWorks团队收集了较多的用户反馈,大家普遍对于SREWorks的内网离线安装有较大的诉求。于是团队决定进一步增强这部分的安装能力。 前端工程部分(frontend),为了开发者更加敏捷高效的协作开发,以及便于社区开发者参与共建前端组件生态。我们对前端工程架构进行了重新梳理拆分,按照Monorepo模式架构演进; 同时也对工程构建相关工具进行了优化升级。 下面为v1.4的版本功能版本介绍: 1. 前端工程Monorepo模式重构 Monorepo即单仓(repository)多包(package),大型前端工程项目采用这种模式进行开发管理,能带来诸多的开发和管理便利: 更加清晰的模块结构和依赖关系; 更细粒度的独立构建单元便于协作开发和不同更新频率的子包单独发版; 更加高效的代码复用等。 我们在v1.4版本中采用lerna + yarn workspace 的技术方案进行了Monorepo的架构实践:将原工程拆分为@sreworks/app主包应用,和@sreworks/components、@sreworks/widgets、@sreworks/framew...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Mario游戏-低调大师作品
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境