我需要定期运行几个脚本,并以普罗米修斯指标的格式重新发送它们的输出。
目前,我在Flask上使用带有后台cron作业的自制解决方案,将输出转储到文件中,解析它们并转换为.prom格式,然后通过NodeExporter.bref公开。
这似乎是矫枉过正,白白自制。 我想知道是否有一个标准解决方案,它可以运行脚本,解析它们的输出并在/metrics 处公开或以 Prometheus 或 Fluentd 格式重新发送?
Fluentd能适合这个吗?
当您需要执行脚本时,您可以:
-
使用适当的
fluentd.config
启动流畅实例 -
运行脚本并将输出发送到正在运行的流利用户
-
fluentd.config
应配置为指向您的普罗米修斯
如果您使用的是Kubernetes
则可以想到具有 2 个容器的 pod(fluentd + 带有脚本的自定义容器(。您也可以用CronJob
来安排它。
您应该查看这些链接:
-
https://docs.fluentd.org/v0.12/articles/monitoring-prometheus
-
https://github.com/fluent/fluent-plugin-prometheus