[经验交流] 试用基于 influxdb+kapacitor 的监控系统

两个月前试用了基于 elasticsearch + xpack (watch) 的监控系统,发现了一个问题:elasticsearch 作为时序数据库使用时性能较差,在我目前的硬件配置下(es 主机内存 8G),使用 grafana 展示两个月以上的数据时,在读取数据的过程中出现明显卡顿,es 的资源占用率几乎到100%。因此,我又试用了 基于 influxdb+kapacitor 的监控系统。

1. 数据搜索性能

初步印象:搜索大量时序数据时 influxdb 的性能强于 es。可能是 es和 influxdb的定位本来就不同,一个是全文搜索引擎,一个是时序数据库,术有专攻。

2. 资源占用率

influxdb 资源占用率显著低于 es,可能与它用 go 语言编写有关

3. 报警功能

influx 的 kapacitor 功能与 es 的 watch (在 x-pack 包中) 类似,都可以用作报警,influx 还提供了 ui 系统 chronograf 来管理 kapacitor,借助 chronograf 可以无障碍的编写报警监控任务。这一点比 es 的 watch 方便多了。

kapacitor 支持 http post 方式发送报警信息,数据是 json 格式,其中 "message" 键的值可以自定义。为了能通过 http post  发送 短信报警,我另外编写了一个 restful 的短信发送服务器,可以接收包含 "message" 键值的 json 数据,( "message" 的值包含手机号码和短信内容,用 | 隔开),并发送短信:

{“message”:"138000000,156000000 | 短信报警内容"}

附:通过 chronograf 创建 kapacitor 监控报警任务

* 选择时序数据

* 设置报警条件

* 设置报警信息

时间: 2024-08-14 01:05:20

[经验交流] 试用基于 influxdb+kapacitor 的监控系统的相关文章

lite-monitor 一款基于shell命令的监控系统

介绍 lite-monitor 一款基于shell命令的监控系统,可以根据项目中输出的日志定时输出或者统计输出,并发送钉钉机器人报警消息. lite-monitor能做什么: 定时监控某个服务进程是否还存在,不存在则钉钉告警. 定时统计近一段时间内具体日志文件中关键字出现的次数,并对次数做一个阈值比较,超出阈值则钉钉告警并输出日志. 进阶监控(qps/计算效率等)可以根据awk等命令自定义实现. lite-monitor的特点: 每个监控可配置不同钉钉群机器人,可配置@具体人或者@all 对已有

【监控】使用 Grafana、collectd 和 InfluxDB 打造现代监控系统

参考资料:Grafana 是 Graphite 和 InfluxDB 仪表盘和图形编辑器:http://www.oschina.net/p/grafana 使用 Grafana.collectd 和 InfluxDB 打造现代监控系统:https://linux.cn/article-5252-1.html collectd监控性能联合influxdb grafana打造metric收集系统:http://www.tuicool.com/articles/ErmIVnb 使用 Grafana+c

使用 Grafana、collectd 和 InfluxDB 打造现代监控系统

使用 Grafana.collectd 和 InfluxDB 打造现代监控系统 先给小伙伴们秀一下由grafana画出的监控效果图 想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的: 采集数据(collectd)-> 存储数据(influxdb) -> 显示数据(grafana) InfluxDB 是 Go 语言开发的一个开源分布式时序数据库,非常适合存储指标.事件.分析等数据,看版本号(v0

项目三. 基于图像压缩的视频监控系统

项目三. 基于图像压缩的视频监控系统 Sprint0-产品设计与规划 基于图像压缩的视频监控系统 1. 产品功能演示 在linux系统上运行程序,弹出登录界面,输入地址.端口信息,弹出视频监控界面,实时传出视频信息. 2. 功能模块分析 采集端: 图像采集子系统 图像编码子系统 传输子系统 主程序 监控端: 传输子系统 图像编码子系统 传输子系统 主程序 Sprint1-基于Epoll架构的采集端程序框架设计 第1课-Epoll机制精通 大纲: v  为什么用Epoll? 阻塞型IO与多路复用

[经验交流] 试用 grafana 报警功能

1. gfafana 概述 grafana 是一款优秀的数据展示工具,几乎是各类时序数据库的前端标配系统.grafana 在V4版本中已经加入了报警功能. 2. influxdb 概述 influxdb 是influxdata的时序数据库产品,influxdata 还提供了 kapacitor 用来创建脚本.实现报警功能,chronograf 是一个UI系统,可用来可视化创建报警监控任务. 3. kapacitor 和 chronograf kapacitor 的功能比较丰富,但是通过命令行的方

Grafana、collectd 和 InfluxDB 打造现代监控系统(一)安装篇

为什么研究Grafana.collectd 和 InfluxDB,是因为本人工作中使用到的开源监控软件(nagios.Cacti)画图都是基于RRD实现的,老实说都不太美观,并且无法自定义图表,但是凭本人的开发水平还无法做到自己写图表. Grafana+collectd+InfluxDB,采用客户端->服务端存储->WEB界面显示的工作模式,使用UTP传输数据,并且支持自定义图表,有良好的扩展性,重要的是Grafana页面展示比较美观. 页面展示可浏览官方演示平台:http://play.gr

Grafana、collectd 和 InfluxDB 打造现代监控系统(二)配置篇

一.InfluxDB开启collectd插件 InfluxDB 现在自带一个 collectd 插件来获取 collectd 客户端发来的数据,以前可没这么方便哦,0.8.4 版本以前只能通过 influxdb-collectd-proxy 这样的第三方程序来连接 collectd 和 InfluxDB. InfluxDB 自带的 collectd 插件默认是关闭的,需要手动配置打开 enabled = true,并填上 database = "collectd" 这一行,这里的 &q

基于视频压缩的实时监控系统

采集端主要框架: 主程序.图像采集子系统.传输子系统.图像编码压缩子系统 监控端主要框架: 主程序.传输子系统.图像解码子系统.图像显示子系统 针对采集端来说: 主程序工作流程:(采用epoll架构) 1.利用epoll_create函数创建epoll  2.将加入等待事件的工作下放到传输子系统和采集子系统中  3.等待事件发生且处理epoll_wait 图像采集子系统工作流程:(使用了V2L4编程模型使摄像头采集图像)1.V2L4初始化  2. 采集图像 传输子系统工作流程:(利用socket

Grafana、collectd 和 InfluxDB 打造现代监控系统(三)操作篇

更多介绍请参考 官网参考文档:http://docs.grafana.org/官方演示地址:http://play.grafana.org/ 一.创建新的dashboard 二.增加Panel 三.选择数据源 四.效果