跳转至

Jobs and Instances

用Prometheus术语来说,您可以抓取scrape的endpoint称为instance,通常对应于单个进程。具有相同目的的instance的集合collation(例如,出于可伸缩性或可靠性而复制的过程)称为作业。

例如,具有四个复制实例的API服务器job:

  • job: api-server
    • instance 1: 1.2.3.4:5670
    • instance 2: 1.2.3.4:5671
    • instance 3: 5.6.7.8:5670
    • instance 4: 5.6.7.8:5671

自动生成label和时间序列

当Prometheus抓取target时,它会自动在抓取的时间序列上附加一些labels,以识别被抓取的target:

job:target所属的已配置job name。 instance:已抓取的目标URL的<host>:<port>部分。

如果这些labels的任何一个已经存在于抓取数据中,则其行为取决于honor_labels配置选项。有关更多信息,请参见scrape configuration documentation

对于每个instance的scrape,Prometheus按照以下时间序列存储样本:

  • up{job="<job-name>", instance="<instance-id>"}: 1如果实例运行状况良好(即可达),则为1,如果抓取失败,则为0。
  • scrape_duration_seconds{job="<job-name>", instance="<instance-id>"}:scrape的持续时间。
  • scrape_samples_post_metric_relabeling{job="<job-name>", instance="<instance-id>"}: 应用metric重新标记后剩余的samples数。
  • scrape_samples_scraped{job="<job-name>", instance="<instance-id>"}: target暴露的样本数。
  • scrape_series_added{job="<job-name>", instance="<instance-id>"}:此scrape中新序列的大概数量(v2.10的新功能)

运行时间序列对于实例可用性监视很有用。

Comments