diff options
author | 2024-03-31 22:41:11 +0100 | |
---|---|---|
committer | 2024-04-01 14:43:18 +0200 | |
commit | b48bf5b45a8339b1b326d9d34a60ef00a430459d (patch) | |
tree | 327342eb5faf9ffc0608f2847a2b2956fc6135c9 | |
parent | Temporarily ignore the off topic channels for duckpond (#200) (diff) |
Support port pretty names as well as integer ports for SD
-rw-r--r-- | kubernetes/namespaces/monitoring/prometheus/prometheus-config.yaml | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/kubernetes/namespaces/monitoring/prometheus/prometheus-config.yaml b/kubernetes/namespaces/monitoring/prometheus/prometheus-config.yaml index 7ad047c..1db9234 100644 --- a/kubernetes/namespaces/monitoring/prometheus/prometheus-config.yaml +++ b/kubernetes/namespaces/monitoring/prometheus/prometheus-config.yaml @@ -233,7 +233,7 @@ data: # * `prometheus.io/path`: If the metrics path is not `/metrics` override this. # * `prometheus.io/port`: Scrape the pod on the indicated port instead of the # pod's declared ports (default is a port-free target if none are declared). - - job_name: 'kubernetes-pods' + - job_name: 'kubernetes-pods-port-integers' kubernetes_sd_configs: - role: pod @@ -259,6 +259,46 @@ data: - source_labels: [__meta_kubernetes_pod_name] action: replace target_label: kubernetes_pod_name + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_port] + action: keep + regex: '^\d+$' + metric_relabel_configs: + - source_labels: + - namespace + action: replace + regex: (.+) + target_label: kubernetes_namespace + + # Example scrape config for pods + - job_name: 'kubernetes-pods-port-names' + kubernetes_sd_configs: + - role: pod + + relabel_configs: + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] + action: keep + regex: true + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] + action: replace + target_label: __metrics_path__ + regex: (.+) + - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] + action: replace + regex: ([^:]+)(?::\d+)?;(\d+) + replacement: $1:$2 + target_label: __address__ + - action: labelmap + regex: __meta_kubernetes_pod_label_(.+) + - source_labels: [__meta_kubernetes_namespace] + action: replace + target_label: kubernetes_namespace + - source_labels: [__meta_kubernetes_pod_name] + action: replace + target_label: kubernetes_pod_name + # if we have a text port name (NOT an integer one), drop if it's not the current port + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_port] + action: keepequal + target_label: __meta_kubernetes_pod_container_port_name metric_relabel_configs: - source_labels: - namespace |