Elastic Stack自6.3版开始,开放原先X-Pack的付费功能,如monitoring(监控), CSV exports(CVS数据导出), Search Profiler(搜索分析器), Grok Debugger(Grok语法调试器), and APM UIs(性能监控界面)。在使用中,仅靠人工查看发现可能的问题,相对较为费力,想到X-Pack具有告警功能,立即使用30天的试用许可,一探究竟。
配置界面
监控告警是之前watcher修改而来,位置相当低调,在kibana的左侧主菜单,根本看不到身影,一度以为不具备这项功能,后来在Management(系统管理)页面下,才发现在Elasticsearch配置区域,存在watcher(监视器)菜单。
在开启monitoring(系统监测)之后,系统默认内置的监测项,无法在界面进行修改。
新建监控
新建监控有两种方式:
- threshold alert (阀值报警)
-
advanced watch (高级监控)
前者采用图形界面配置,高级方式采用直接编写json的方式。
监控整体分为三部分:
- Inputs & Triggers(记录及触发)
- Condition(检测条件)
- Actions(告警方式)
记录及触发
这部分相对简单,需要填入
- 监控告警的名称
- 选择索引(数据源)、选择时间字段
- 设置检测周期(如 1秒)
监测条件
检测条件需要选择4个参数: 运算、文档范围、比较条件、持续时间
- 运算
系统提供以下几类运算:-
count()
: 总数 -
average()
: 平均值 -
sum()
: 总和 -
min()
: 最小值 -
max()
: 最大值
-
- 文档范围
对应函数的计算范围,除count()
函数外,选择其他函数,必须选择一个数值类型的字段。 - 比较条件
IS ABOVE
IS BLOW
- 持续时长
-
FOR THE LAST
持续
-
告警方式
内置告警为3种,分别为:
- slack 发送给slack即时消息
- logging 日志记录
- Email 发送邮件模式
告警示例
-
堆栈告警
-
系统负载
参考:
本文使用知识共享协议:署名-非商业性使用-相同方式共享 (BY-NC-SA 4.0) 协议