forked from lesovsky/pgscv
-
-
Notifications
You must be signed in to change notification settings - Fork 9
Custom target labels
Mikhail Grigorev edited this page Feb 25, 2025
·
8 revisions
Starting with pgSCV 0.13.0, it has become possible to use custom labels in /targets
endpoint.
Version 0.10.0 introduces support for the Prometheus (VictoriaMetrics) discovery service. You can read about this in detail on the documentation page.
Support for custom labels in the /targets
endpoint was a major improvement.
Below I will give an example of pgscv.yaml
configuration using this functionality and what results we will see with it.
listen_address: 0.0.0.0:9890
services:
"service1":
service_type: "postgres"
conninfo: "postgres://pgscv:XXXXX@Z.Z.Z.Z:5432/db1"
target_labels:
- name: __scrape_interval__
value: 5m
- name: __scrape_timeout__
value: 2m
- name: datacenter
value: dc1
"service2":
service_type: "postgres"
conninfo: "postgres://pgscv:XXXXX@Y.Y.Y.Y:5432/db2"
target_labels:
- name: __scrape_interval__
value: 2m
- name: __scrape_timeout__
value: 5m
- name: datacenter
value: dc2
For example, a /targets
output
[
{
"targets": ["X.X.X.X:9890/metrics?target=system:0"]
},
{
"targets": ["X.X.X.X:9890/metrics?target=service1"],
"labels": {
"datacenter": "dc1",
"__scrape_interval__": "5m",
"__scrape_timeout__": "2m"
}
},
{
"targets": ["X.X.X.X:9890/metrics?target=service2"],
"labels": {
"datacenter": "dc2",
"__scrape_interval__": "2m",
"__scrape_timeout__": "5m"
}
}
]
After Prometheus (VictoriaMetrics) performs service discovery, each service (service1 and service2) will have its own scrape_interval
and scrape_timeout
parameters set, and the datacenter
label will be added to each postgres_
metric.