夜莺-Nightingale
夜莺V6
项目介绍 架构介绍
快速开始
黄埔营
安装部署
升级
采集器
使用手册
API
数据库表结构
FAQ
夜莺专业版
开源生态
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
第3章:Prometheus告警处理
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
第9章:Prometheus Operator
参考资料

机器列表(对象列表)数据异常是为什么?

采集器使用 categraf

如果采集器用的 categraf,需要在 conf/config.toml 中打开 heartbeat 的配置。

# 心跳上报(附带资源信息,对象列表中使用)给夜莺v6
# 如果是v5版本,这里不需要保留
[heartbeat]
enable = true

# report os version cpu.util mem.util metadata
url = "http://127.0.0.1:17000/v1/n9e/heartbeat"

上例中,categraf 直接向中心端的 n9e 上报心跳。如果采用边缘机房的部署方式,categraf 也可以向 n9e-edge 心跳。那个 url 配置项就需要改成 n9e-edge 的地址,同时 urlpath 改成 /v1/n9e/edge/heartbeat

使用其他采集器

如果使用其他采集器,比如 grafana-agent、telegraf、datadog-agent 等,正常情况是机器列表会出现机器,但是 cpu、内存 等其他字段都是 unknown。这些采集器和夜莺的协同稍差。

数据流没有经过夜莺

如果数据流压根就没有经过夜莺,那夜莺就没法从监控数据中解析出机器信息,所以对象列表就是空的。

此时不影响核心的告警和看图功能,只是会丧失机器列表的功能(自然无法为机器监控数据打标签、对机器划分业务组控制权限),也没法使用告警自愈的功能。

比如使用 vmagent 作为采集器,采集了数据之后直接推给 VictoriaMetrics,没有流经夜莺;或者直接使用 Prometheus 抓取各类 exporter 的数据,也没有流经夜莺。此时就把夜莺仅作为看图 + 告警引擎就可以了。

开源版
Flashcat
Flashduty