Closed PengShuaixin closed 2 years ago
使用的版本是?之前旧版本在创建监控策略的时候,创建了机器相关的策略,应该是机器无关的,这块可以检查一下。
KM的版本是2.4.2,编译打包的代码是master分支最新的代码,夜莺版本是4.0.1
在KM页面上创建之后,告警规则展示如下:
这个tag 监控,必须要接入夜莺吗?
可以再对照一下夜莺平台上的指标,看是否满足触发条件,如果满足但是没有触发,估计得问一下夜莺相关的同学。具体的欢迎入群(README中有)沟通~
可以再对照一下夜莺平台上的指标,看是否满足触发条件,如果满足但是没有触发,估计得问一下夜莺相关的同学。具体的欢迎入群(README中有)沟通~
无更多反馈,关闭该问题,也欢迎入群交流~
问题描述
在KM里面成功创建告警规则的情况下,夜莺监控系统里面在达到触发规则的情况下,不能正常报警
原因初步分析
分析方法
com.xiaojukeji.kafka.manager.monitor.component.n9e.N9eService#sinkMetrics
中的请求发给夜莺的监控指标,数据如下:如上数据,我们能看到
tags
里面的数据为cluster=TAGTIC_KAFKA
;再看
com.xiaojukeji.kafka.manager.monitor.component.n9e.N9eService#createStrategy
方法,发现向夜莺发送创建告警规则时,请求数据如下:如上数据,发现
{"tkey":"cluster","topt":"=","tval":["内网集群"]}
中cluster
的标签值为内网集群
;其中,
![0](https://user-images.githubusercontent.com/42090337/125757123-8f238433-8c38-450c-812e-c887ebcb4e20.png)
TAGTIC_KAFKA
和内网集群
的关系在KM中如图:在夜莺的界面中能看到如下的情况:
根据以上分析得出,导致告警无法触发的原因就是,KM在创建告警规则时使用的cluster标签是集群名称,而向夜莺上传监控指标时使用的cluster标签是集群标识,由此就导致告警系统在使用cluster标签过滤数据时出现了问题,最终导致告警规则在满足条件的情况下也无法触发。
临时解决方案
在夜莺监控页面,修改cluster过滤标签,从上图改成如下:
![4](https://user-images.githubusercontent.com/42090337/125759991-8c5f037f-5087-4921-9232-304c2ce7765d.png)