我目前已设置Prometheus来废弃几个pushgateway目标:
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds.
Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global
'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Promethe (see us itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'Node1'
honor_labels: true
static_configs:
- targets: ['localhost:9071']
- job_name: 'Node2'
honor_labels: true
static_configs:
- targets: ['localhost:9073']
当前,已成功从Pushgateway刮取了Node1和Node2的数据,一切都很好。
我的问题是,我也有来自不同来源的Node1和Node2数据(即包含样本和时间戳的平面文件)。为了保留时间戳,我不能简单地让Prometheus刮擦该数据,因为它将在读取数据时附加其自己的时间戳。
所以我要做的是以Prometheus友好的格式将Node1和Node2数据写入influxDB(支持包括时间戳),然后我想将该数据读入Prometheus。
是否可以使用yml文件中的某些其他配置(例如remote_read)从InfluxDB中读取?如果是这样,我该如何区分从Node1 / 2推门通道刮取的数据和从Inlfux提取的Node1 / 2数据。
使用yml配置示例非常有帮助:) Thx
注意:我尝试运行几个Prometheus实例以使所有内容分开,但是由于某些原因Prometheus不喜欢这样做(即,它不会让我从浏览器连接到非9090端口) ,即使我指定了--web-listen = localhost:9092。