mirror of
https://github.com/prometheus/prometheus.git
synced 2025-01-25 20:54:41 -08:00
Fix kubernetes host:port relabel regex.
This change corrects a bug introduced by PR https://github.com/prometheus/prometheus/pull/2427 The regex uses three groups: the hostname, an optional port, and the prefered port from a kubernetes annotation. Previously, the second group should have been ignored if a :port was not present in the input. However, making the port group optional with the "?" had the unintended side-effect of allowing the hostname regex "(.+)" to match greedily, which included the ":port" patterns up to the ";" separating the hostname from the kubernetes port annotation. This change updates the regex for the hostname to match any non-":" characters. This forces the regex to stop if a ":port" is present and allow the second group to match the optional port.
This commit is contained in:
parent
0436e982cb
commit
3f29324e04
|
@ -108,7 +108,7 @@ scrape_configs:
|
|||
- source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
|
||||
action: replace
|
||||
target_label: __address__
|
||||
regex: (.+)(?::\d+)?;(\d+)
|
||||
regex: ([^:]+)(?::\d+)?;(\d+)
|
||||
replacement: $1:$2
|
||||
- action: labelmap
|
||||
regex: __meta_kubernetes_service_label_(.+)
|
||||
|
@ -174,7 +174,7 @@ scrape_configs:
|
|||
regex: (.+)
|
||||
- source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
|
||||
action: replace
|
||||
regex: (.+)(?::\d+)?;(\d+)
|
||||
regex: ([^:]+)(?::\d+)?;(\d+)
|
||||
replacement: $1:$2
|
||||
target_label: __address__
|
||||
- action: labelmap
|
||||
|
|
Loading…
Reference in a new issue