Cómo copiar un valor de un campo a otro, si existe un campo mediante el uso de ingestnode tubería

0

Pregunta

Quiero crear un nuevo campo llamado kubernetes.pod.nombre de los campos si llama de prometeo.las etiquetas.pod existe en los registros. Me enteré de que a partir del conjunto de procesador podía copiar el valor que está presente en prometeo.las etiquetas.pod a un nuevo campo de kubernetes.pod.nombre pero necesito hacer esto de forma condicional como el pod nombre sigue cambiando.

¿Cómo puedo configurar una condición tal que si el campo de prometeo.las etiquetas.pod existe, entonces sólo tengo que añadir un nuevo campo llamado kubernetes.pod.nombre (tanto tiene el mismo valor)

ctx.prometheus?.labels?.namespace== "name_of_namespace"

se podría hacer de manera similar podemos hacer

ctx.prometheus?.labels?.pod== "*"

para comprobar si este campo existe o no?

elasticsearch elk kibana
2021-11-18 16:58:25
1

Mejor respuesta

0

Si el texto es una cadena y si su obligados a establecer la condición de que si existe, entonces lo mejor es utilizar la siguiente condición en el conjunto de procesador.

ctx.prometheus?.labels?.namespace!=null

Esta es la forma en que he implementado el escenario anterior mediante la ingesta de nodo de la tubería.

"set": {
  "field": "kubernetes.pod.name",
  "copy_from": "prometheus.labels.pod",
  "if": "ctx.prometheus?.labels?.pod!=null",
  "ignore_failure": true
}
2021-11-18 17:02:50

También tenga en cuenta que copy_from sólo se admite de ES 7.11 adelante.
Val

De acuerdo con esto. Estoy utilizando la versión más reciente.
sidharth vijayakumar

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................