我需要Prometheus监控系统部署到Heroku的监控应用程序。
问题是如果你有更多的dynos应用程序,你需要知道你的dynost的所有IP地址才能从所有dynos中提取指标。
对于K8或AWS,我们可以获得POD /实例的完整列表,因此您可以执行此操作。
所以问题是,你知道吗,如何从Heroku获得所有dynos的IP?谢谢
所以问题是,你知道吗,如何从Heroku获得所有dynos的IP?
这在Heroku平台上是不可能的。应用程序dynos位于负载均衡器后面,您无法直接访问它们。
我需要Prometheus监控系统部署到Heroku的监控应用程序。
也许这可以分成两个普罗米修斯的工作。
*.herokuapp.com/metrics
端点)考虑将Heroku日志消耗用于导出器,将日志转换为度量标准端点。
Heroku应用程序统计信息中还有一个私有API,不是最好的主意,但它可能很好地收集基本的应用程序统计信息。查看Heroku仪表板中的网络请求,了解其工作原理。
这与使用pushgateway有一些相似之处,如https://prometheus.io/docs/practices/pushing/所述。
我正在考虑将the $DYNO environment variable作为所有指标的标签,因此Prometheus可以对其正在刮取的dyno有一致的看法。给定足够短的刮擦间隔,所有的dynos都应该能够在合理的时间内报废。
Pushgateway不是监控长期服务的推荐方式。