Prometheus 了解普罗米修斯

Prometheus 了解普罗米修斯,prometheus,pull,Prometheus,Pull,在阅读和尝试之后,我仍然不太理解普罗米修斯的度量标准 假设我有一个电传代理,每5秒向普罗米修斯发送一次数据 普罗米修斯应该每5秒拉一次,对吗?但是,如果推拉之间有几秒钟的间隔(确定推拉不能同时发生),该怎么办?如果普罗米修斯被设定为每7秒拉一次呢 如果普罗米修斯被设定为每15秒拉一次呢?只有三分之一的人会被拉出来?telegraf探员会对此大惊小怪吗 如果普罗米修斯被配置成每30秒甚至60秒拉一次呢?是该时间点的拉取值,还是30/60秒的平均值 最后,普罗米修斯牵引间隔是否可以在运行时更改?

在阅读和尝试之后,我仍然不太理解普罗米修斯的度量标准

假设我有一个电传代理,每5秒向普罗米修斯发送一次数据

  • 普罗米修斯应该每5秒拉一次,对吗?但是,如果推拉之间有几秒钟的间隔(确定推拉不能同时发生),该怎么办?如果普罗米修斯被设定为每7秒拉一次呢
  • 如果普罗米修斯被设定为每15秒拉一次呢?只有三分之一的人会被拉出来?telegraf探员会对此大惊小怪吗
  • 如果普罗米修斯被配置成每30秒甚至60秒拉一次呢?是该时间点的拉取值,还是30/60秒的平均值

最后,普罗米修斯牵引间隔是否可以在运行时更改?我想把夜间拉车间隔缩短到30秒甚至60秒

我不知道您使用的是哪种类型的导出器,一般来说,普罗米修斯度量导出器是一个
HTTP服务器
,服务于特定的端点(大多数情况下
/metrics

  • 因此,当您在配置Prometheus时设置
    scrape_interval=x
    时,它将在目标端点每隔x秒发出
    GET
    请求,并存储这些时间序列指标

  • 如果要监视某些事件,这些事件的持续时间少于
    scrape\u interval
    中提到的时间,则可能会错过这些事件。有一种叫做普罗米修斯·普希盖特的东西可以解决这个问题

  • 通常,度量导出器不会对时间序列数据执行任何操作,您将收到当时的数据

  • 普罗米修斯可以在运行时重新加载其配置。如果新配置的格式不正确,则不会应用更改。通过向Prometheus进程发送SIGHUP或向/-/reload端点发送HTTP POST请求(启用--web.enable-lifecycle标志时),可以触发配置重新加载。这也将重新加载任何已配置的规则文件


    我不知道您使用的是哪种类型的导出器,通常,普罗米修斯度量导出器是一个
    HTTP服务器
    ,服务于特定的端点(大多数情况下
    /metrics

  • 因此,当您在配置Prometheus时设置
    scrape_interval=x
    时,它将在目标端点每隔x秒发出
    GET
    请求,并存储这些时间序列指标

  • 如果要监视某些事件,这些事件的持续时间少于
    scrape\u interval
    中提到的时间,则可能会错过这些事件。有一种叫做普罗米修斯·普希盖特的东西可以解决这个问题

  • 通常,度量导出器不会对时间序列数据执行任何操作,您将收到当时的数据

  • 普罗米修斯可以在运行时重新加载其配置。如果新配置的格式不正确,则不会应用更改。通过向Prometheus进程发送SIGHUP或向/-/reload端点发送HTTP POST请求(启用--web.enable-lifecycle标志时),可以触发配置重新加载。这也将重新加载任何已配置的规则文件

    假设我有一个电传代理,每5秒向普罗米修斯发送一次数据

    与InfluxDB输出插件不同,Telegraf不会将度量推送到目标,而是创建一个服务于/metrics(默认)端点的web服务器

    如果你想使用推而不是拉,你可以使用。推送到Pushgateway(通过HTTP POST或PUT)的数据将在Pushgateway的端点处可用,普罗米修斯可以对其进行抓取。 但请注意,Pushgateway只应用于某些情况,请参阅

    Telegraf提供了一些HTTP输出插件,因此(理论上)可以使用Telegraf将度量推送到Pushgateway。但在这种情况下,您不应该额外使用Telegraf的Prometheus输出插件

    假设我有一个电传代理,每5秒向普罗米修斯发送一次数据

    与InfluxDB输出插件不同,Telegraf不会将度量推送到目标,而是创建一个服务于/metrics(默认)端点的web服务器

    如果你想使用推而不是拉,你可以使用。推送到Pushgateway(通过HTTP POST或PUT)的数据将在Pushgateway的端点处可用,普罗米修斯可以对其进行抓取。 但请注意,Pushgateway只应用于某些情况,请参阅


    Telegraf提供了一些HTTP输出插件,因此(理论上)可以使用Telegraf将度量推送到Pushgateway。但在这种情况下,您不应该另外使用Telegraf的Prometheus输出插件。

    您仍然需要设置Prometheus从上述Pushgateway进行采集,因此该方法与当前方法之间不会有任何区别(除了额外的间接和延迟)。也许我没有清楚地表达自己。我想说的是,Telegraf不会把任何东西推给普罗米修斯,除非你使用我描述的解决方法。当然,您应该使用Telegraf的Prometheus输出插件,并将Prometheus配置为直接从输出插件中刮取,而不是使用Pushgateway。感谢“
    输出。Prometheus_client
    ”给我的印象是,它正在进行推送。也就是说,我不想把指标推向目标。毕竟,我“仍然不太理解普罗米修斯的故事”。谢谢你的解释+1你仍然需要设置普罗米修斯从上述Pushgateway收集信息,因此该方法和当前方法之间没有任何区别(除了额外的间接和延迟)。也许我没有清楚地表达自己。我想说的是,Telegraf不会把任何东西推给普罗米修斯,除非你使用我描述的解决方法。当然,您应该使用Telegraf的Prometheus输出插件并将Prometheus配置为scr