如何使用 Prometheus 监控 Heroku 多 dynos 应用程序

Zde*_*sek 5 monitoring heroku prometheus

我需要通过 Prometheus 监控系统部署到 Heroku 的监控应用程序。

问题是,如果你有更多的 dynos 应用程序,你需要知道你的 dynos 的所有 IP 地址才能从所有 dynos 中提取指标。

对于 K8s 或 AWS,我们可以获得完整的 POD/实例列表,因此您可以执行此操作。

所以问题是,您知道如何从 Heroku 获取所有 dynos 的 IP 吗?谢谢

Sam*_*son 1

所以问题是,你知道如何从 Heroku 获取所有 dynos 的 IP 吗?

这在 Heroku 平台上是不可能的。应用程序测功机位于负载均衡器后面,您无法直接访问它们。

我需要通过 Prometheus 监控系统部署到 Heroku 的监控应用程序。

也许这可以分为两个 Prometheus 工作。

  1. 直接监控应用程序(在其负载平衡*.herokuapp.com/metrics端点)
  2. 并使用通过某种方式推送收集动态指标的导出器

考虑使用 Heroku 日志导出器,将日志转换为指标端点。

Heroku 应用程序统计信息上还提供了一个私有 API,这不是最好的主意,但它可能可以很好地收集基本的应用程序统计信息。查看 Heroku 仪表板中的网络请求,了解其工作原理。

这与使用 Pushgateway 有一些相似之处,如https://prometheus.io/docs/practices/pushing/中所述。