如何监控夜莺自身的组件

夜莺 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 的配置样例如下:

  1. [[instances]]
  2. urls = [
  3. "http://localhost:18000/metrics",
  4. "http://localhost:19000/metrics",
  5. ]

我们还做了一个监控大盘,地址在 这里,可以导入夜莺使用。