Logstash: mantener un valor en todos los eventos

Tengo una fecha que solo está presente una vez en cada archivo de registro y estoy tratando de agregar esta fecha a todos los siguientes eventos después de que se haya coincidido una vez, lo que hace que actúe como una variable global de alguna manera. (La fecha está en la parte superior del documento y no puedo usarmultiline o hacer cambios en el nombre o contenido del archivo)

Para esto, mi enfoque es usar ungrep filtrar condrop => false.

grok {
    patterns_dir => "[...]"
    match => [ "message", "%{DATELINE}" ]
    tag_on_failure => [ ]
}
grep {
    add_field => { "grepdate" => "%{mydate}" }
    drop => false
}
date {
    locale => "en"
    timezone => "Europe/Paris"
    match => [ "grepdate", "yyyyMMdd" ]
    target => "grepdate"
}

Expresión regular:

DATELINE (= Date: (?<mydate>[0-9]{8}))

Lo que noto es que elgrepdate El campo se agrega correctamente a todos los eventos, que es lo que quiero, pero el valor de ese campo no es la fecha en sí (el valor de%{mydate}), pero la cadena real"%{mydate}", excepto cuando se compara por primera vez (al analizar la fecha real en mi archivo de registro, elgrepdate campo contiene el valor correcto)

¿Qué puedo hacer para arreglar esto?

Cualquier ayuda es muy apreciada.

Editar:

Ahora estoy probando una solución que incluye el uso dememorizeenchufar. Sin embargo, recibo el siguiente error:

No se puede usar más de 1 trabajador de filtro porque los siguientes complementos no funcionan con más de un trabajador: memorizar

¿Hay alguna manera de hacer que este filtro sea seguro para subprocesos?

Respuestas a la pregunta(1)

Su respuesta a la pregunta