将从 AWS Fargate Task 公开的自定义应用程序指标集成到 prometheus
Posted
技术标签:
【中文标题】将从 AWS Fargate Task 公开的自定义应用程序指标集成到 prometheus【英文标题】:Integrate custom application metrics exposed from AWS Fargate Task to prometheus 【发布时间】:2020-10-21 12:39:28 【问题描述】:我有一个在 AWS Fargate 中作为任务运行的 java 应用程序,该应用程序公开了自定义应用程序指标。
MaxwellMetrics_transaction_execution_timequantile="0.5", 0.0
最终需要与 Prometheus 集成。这是第 3 方应用程序,在最坏的情况下触摸代码。日志在 AWS Cloudwatch 中可用。同样,我们可以在 Cloud Watch 中获取指标吗?
附加信息
每当以 FARGATE 类型启动任务时,都会创建一组新的公共和私有 IP,并且此应用程序需要将其关闭并启动,因此需要更好的方法来访问 /metric 端点暴露。使用指标导出器需要更改源代码以发出日志以存储中间体。
如前所述,这将是最后的选择。
【问题讨论】:
【参考方案1】:您说您的指标在 CW 中可用。您是否考虑过使用Prometheus CW exporter?
【讨论】:
指标在应用程序 api 端点而不是 CW 处公开。我的问题是,我们如何获得 CW 中的指标。 对不起,我误读了您的问题。您的应用如何公开这些指标?他们会吐到标准输出吗?它们在文件中可用吗?它们是否可以通过 REST 端点获得?我没有受过教育的猜测是,如果您需要将它们作为自定义指标降落在 CW 中,您需要编写一些逻辑来提取它们,然后将它们put
像 this 一样放到 CW 中。也许通过将此逻辑作为 sidecar 运行以防止更改您的应用程序?以上是关于将从 AWS Fargate Task 公开的自定义应用程序指标集成到 prometheus的主要内容,如果未能解决你的问题,请参考以下文章