夜莺 5.x 版本有 n9e-webapi 和 n9e-server 两个模块,这俩模块都暴露了 /metrics
接口,所以,夜莺自身组件的监控,就有两个做法,做法一:
- 搞一个单独的 Prometheus,抓取 n9e-webapi 和 n9e-server 的
/metrics
的数据 - 在这个单独的 Prometheus 里配置 up 指标的告警,这俩模块如果挂了可以及时知道
单独的 Prometheus 和夜莺拆开,不会造成循环依赖。当然,如果夜莺部署成集群了,那就可以用第二个做法,即用夜莺自己监控自己,某个模块挂了,不影响大局,使用 Categraf 的 input.prometheus 插件来采集这俩模块的 /metrics
数据就好。
conf/input.prometheus/prometheus.toml
的配置样例如下:
[[instances]]
urls = [
"http://localhost:18000/metrics",
"http://localhost:19000/metrics",
]
我们还做了一个监控大盘,地址在 这里,可以导入夜莺使用。