在 Prometheus 术语中,您可以抓取的端点(endpoint)称为实例(instance),通常对应于单个进程。具有相同目的的实例集合,例如为可伸缩性或可靠性而复制的流程,称为作业(job)。
例如,具有四个复制实例的 API 服务器作业:
- 作业(job):
api-server
- 实例 1:
1.2.3.4:5670
- 实例 2:
1.2.3.4:5671
- 实例 3:
5.6.7.8:5670
- 实例 4:
5.6.7.8:5671
- 实例 1:
自动生成的标签和时间序列
当 Prometheus 抓取一个目标时,它会自动将一些标签附加到抓取的时间序列上,用于识别抓取的目标:
job
:目标所属的已配置作业名称。instance
:<host>:<port>
被抓取的目标 URL 的一部分。
如果这些标签中的任何一个已经存在于抓取的数据中,则行为取决于honor_labels
配置选项。有关更多信息,请参阅 抓取配置文档 。
对于每个抓取实例,Prometheus 将样本存储在以下时间序列中:
up{job="<job-name>", instance="<instance-id>"}
:1
如果实例是健康的,即可达,或者0
如果抓取失败。scrape_duration_seconds{job="<job-name>", instance="<instance-id>"}
:抓取的持续时间。scrape_samples_post_metric_relabeling{job="<job-name>", instance="<instance-id>"}
:应用度量重新标记后剩余的样本数。scrape_samples_scraped{job="<job-name>", instance="<instance-id>"}
:目标暴露的样本数。scrape_series_added{job="<job-name>", instance="<instance-id>"}
:本次抓取中新系列的大致数量。v2.10 中的新功能
up
时间序列对于实例可用性监控很有用。