mirror of
https://github.com/prometheus/prometheus.git
synced 2024-12-26 22:19:40 -08:00
67838643ee
* Track remote write queues via a map so we don't care about index. Signed-off-by: Callum Styan <callumstyan@gmail.com> * Support a job name for remote write/read so we can differentiate between them using the name. Signed-off-by: Callum Styan <callumstyan@gmail.com> * Remote write/read has Name to not confuse the meaning of the field with scrape job names. Signed-off-by: Callum Styan <callumstyan@gmail.com> * Split queue/client label into remote_name and url labels. Signed-off-by: Callum Styan <callumstyan@gmail.com> * Don't allow for duplicate remote write/read configs. Signed-off-by: Callum Styan <callumstyan@gmail.com> * Ensure we restart remote write queues if the hash of their config has not changed, but the remote name has changed. Signed-off-by: Callum Styan <callumstyan@gmail.com> * Include name in remote read/write config hashes, simplify duplicates check, update test accordingly. Signed-off-by: Callum Styan <callumstyan@gmail.com>
281 lines
5.8 KiB
YAML
281 lines
5.8 KiB
YAML
# my global config
|
|
global:
|
|
scrape_interval: 15s
|
|
evaluation_interval: 30s
|
|
# scrape_timeout is set to the global default (10s).
|
|
|
|
external_labels:
|
|
monitor: codelab
|
|
foo: bar
|
|
|
|
rule_files:
|
|
- "first.rules"
|
|
- "my/*.rules"
|
|
|
|
remote_write:
|
|
- url: http://remote1/push
|
|
name: drop_expensive
|
|
write_relabel_configs:
|
|
- source_labels: [__name__]
|
|
regex: expensive.*
|
|
action: drop
|
|
- url: http://remote2/push
|
|
name: rw_tls
|
|
tls_config:
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
remote_read:
|
|
- url: http://remote1/read
|
|
read_recent: true
|
|
name: default
|
|
- url: http://remote3/read
|
|
read_recent: false
|
|
name: read_special
|
|
required_matchers:
|
|
job: special
|
|
tls_config:
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
scrape_configs:
|
|
- job_name: prometheus
|
|
|
|
honor_labels: true
|
|
# scrape_interval is defined by the configured global (15s).
|
|
# scrape_timeout is defined by the global default (10s).
|
|
|
|
# metrics_path defaults to '/metrics'
|
|
# scheme defaults to 'http'.
|
|
|
|
file_sd_configs:
|
|
- files:
|
|
- foo/*.slow.json
|
|
- foo/*.slow.yml
|
|
- single/file.yml
|
|
refresh_interval: 10m
|
|
- files:
|
|
- bar/*.yaml
|
|
|
|
static_configs:
|
|
- targets: ['localhost:9090', 'localhost:9191']
|
|
labels:
|
|
my: label
|
|
your: label
|
|
|
|
relabel_configs:
|
|
- source_labels: [job, __meta_dns_name]
|
|
regex: (.*)some-[regex]
|
|
target_label: job
|
|
replacement: foo-${1}
|
|
# action defaults to 'replace'
|
|
- source_labels: [abc]
|
|
target_label: cde
|
|
- replacement: static
|
|
target_label: abc
|
|
- regex:
|
|
replacement: static
|
|
target_label: abc
|
|
|
|
bearer_token_file: valid_token_file
|
|
|
|
|
|
- job_name: service-x
|
|
|
|
basic_auth:
|
|
username: admin_name
|
|
password: "multiline\nmysecret\ntest"
|
|
|
|
scrape_interval: 50s
|
|
scrape_timeout: 5s
|
|
|
|
sample_limit: 1000
|
|
|
|
metrics_path: /my_path
|
|
scheme: https
|
|
|
|
dns_sd_configs:
|
|
- refresh_interval: 15s
|
|
names:
|
|
- first.dns.address.domain.com
|
|
- second.dns.address.domain.com
|
|
- names:
|
|
- first.dns.address.domain.com
|
|
# refresh_interval defaults to 30s.
|
|
|
|
relabel_configs:
|
|
- source_labels: [job]
|
|
regex: (.*)some-[regex]
|
|
action: drop
|
|
- source_labels: [__address__]
|
|
modulus: 8
|
|
target_label: __tmp_hash
|
|
action: hashmod
|
|
- source_labels: [__tmp_hash]
|
|
regex: 1
|
|
action: keep
|
|
- action: labelmap
|
|
regex: 1
|
|
- action: labeldrop
|
|
regex: d
|
|
- action: labelkeep
|
|
regex: k
|
|
|
|
metric_relabel_configs:
|
|
- source_labels: [__name__]
|
|
regex: expensive_metric.*
|
|
action: drop
|
|
|
|
- job_name: service-y
|
|
|
|
consul_sd_configs:
|
|
- server: 'localhost:1234'
|
|
token: mysecret
|
|
services: ['nginx', 'cache', 'mysql']
|
|
tags: ["canary", "v1"]
|
|
node_meta:
|
|
rack: "123"
|
|
allow_stale: true
|
|
scheme: https
|
|
tls_config:
|
|
ca_file: valid_ca_file
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
insecure_skip_verify: false
|
|
|
|
relabel_configs:
|
|
- source_labels: [__meta_sd_consul_tags]
|
|
separator: ','
|
|
regex: label:([^=]+)=([^,]+)
|
|
target_label: ${1}
|
|
replacement: ${2}
|
|
|
|
- job_name: service-z
|
|
|
|
tls_config:
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
bearer_token: mysecret
|
|
|
|
- job_name: service-kubernetes
|
|
|
|
kubernetes_sd_configs:
|
|
- role: endpoints
|
|
api_server: 'https://localhost:1234'
|
|
tls_config:
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
basic_auth:
|
|
username: 'myusername'
|
|
password: 'mysecret'
|
|
|
|
- job_name: service-kubernetes-namespaces
|
|
|
|
kubernetes_sd_configs:
|
|
- role: endpoints
|
|
api_server: 'https://localhost:1234'
|
|
namespaces:
|
|
names:
|
|
- default
|
|
|
|
basic_auth:
|
|
username: 'myusername'
|
|
password_file: valid_password_file
|
|
|
|
|
|
- job_name: service-marathon
|
|
marathon_sd_configs:
|
|
- servers:
|
|
- 'https://marathon.example.com:443'
|
|
|
|
auth_token: "mysecret"
|
|
tls_config:
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
- job_name: service-ec2
|
|
ec2_sd_configs:
|
|
- region: us-east-1
|
|
access_key: access
|
|
secret_key: mysecret
|
|
profile: profile
|
|
filters:
|
|
- name: tag:environment
|
|
values:
|
|
- prod
|
|
|
|
- name: tag:service
|
|
values:
|
|
- web
|
|
- db
|
|
|
|
- job_name: service-azure
|
|
azure_sd_configs:
|
|
- environment: AzurePublicCloud
|
|
authentication_method: OAuth
|
|
subscription_id: 11AAAA11-A11A-111A-A111-1111A1111A11
|
|
tenant_id: BBBB222B-B2B2-2B22-B222-2BB2222BB2B2
|
|
client_id: 333333CC-3C33-3333-CCC3-33C3CCCCC33C
|
|
client_secret: mysecret
|
|
port: 9100
|
|
|
|
- job_name: service-nerve
|
|
nerve_sd_configs:
|
|
- servers:
|
|
- localhost
|
|
paths:
|
|
- /monitoring
|
|
|
|
- job_name: 0123service-xxx
|
|
metrics_path: /metrics
|
|
static_configs:
|
|
- targets:
|
|
- localhost:9090
|
|
|
|
- job_name: badfederation
|
|
honor_timestamps: false
|
|
metrics_path: /federate
|
|
static_configs:
|
|
- targets:
|
|
- localhost:9090
|
|
|
|
- job_name: 測試
|
|
metrics_path: /metrics
|
|
static_configs:
|
|
- targets:
|
|
- localhost:9090
|
|
|
|
- job_name: service-triton
|
|
triton_sd_configs:
|
|
- account: 'testAccount'
|
|
dns_suffix: 'triton.example.com'
|
|
endpoint: 'triton.example.com'
|
|
port: 9163
|
|
refresh_interval: 1m
|
|
version: 1
|
|
tls_config:
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
- job_name: service-openstack
|
|
openstack_sd_configs:
|
|
- role: instance
|
|
region: RegionOne
|
|
port: 80
|
|
refresh_interval: 1m
|
|
tls_config:
|
|
ca_file: valid_ca_file
|
|
cert_file: valid_cert_file
|
|
key_file: valid_key_file
|
|
|
|
alerting:
|
|
alertmanagers:
|
|
- scheme: https
|
|
static_configs:
|
|
- targets:
|
|
- "1.2.3.4:9093"
|
|
- "1.2.3.5:9093"
|
|
- "1.2.3.6:9093"
|