es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Etiqueta de fuente múltiple de Prometheus en la configuración de reetiquetado.

Por alguna razón, mi Pod en k8s podría etiquetarse con syscode o cib_syscode, ¿cómo puedo cambiar ambas etiquetas a cib_syscode? Es decir, si el pod está etiquetado con una de ellas, elige su valor de etiqueta como resultado.
He intentado lo siguiente, pero no funciona porque el target_label está duplicado.

yaml
– job_name: ncr
honor_labels: true
scrape_interval: 30s
scrape_timeout: 30s
metrics_path: /metrics
scheme: http
kubernetes_sd_configs:
– role: pod
relabel_configs:
– source_labels: [__meta_kubernetes_pod_label_syscode]
separator: ;
regex: (.)
target_label: cib_syscode
replacement: ${1}
action: replace
– source_labels: [__meta_kubernetes_pod_label_cib_syscode]
separator: ;
regex: (.
)
target_label: cib_syscode
replacement: ${1}
action: replace

Espero su respuesta, ¡gracias!

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para cambiar el nombre de ambas syscode y cib_syscode a cib_syscode en un pod de Kubernetes, se puede actualizar la sección de relabel_configs con el siguiente código:

    relabel_configs:
      - source_labels: [__meta_kubernetes_pod_label_cib_syscode, __meta_kubernetes_pod_label_syscode]
        separator: ;
        regex: (.*)
        target_label: cib_syscode
        replacement: ${1}
        action: keep
    

    Esta configuración utiliza la acción keep para seleccionar cualquiera etiqueta existente entre syscode o cib_syscode y cambiarla a cib_syscode. Aquí, el campo source_labels incluye ambas etiquetas, el campo separator utiliza un punto y coma para separarlas, y el campo regex coincide con cualquier valor con (.*). Finalmente, el campo replacement hace referencia al valor coincidente y el campo target_label especifica la etiqueta a renombrar.

Comments are closed.