[Fluent Bit] Filter 'modify' & 'record_modifier' non exécuté

Bonjour,

J'ai suivis cette documentation https://docs.ovh.com/fr/logs-data-platform/kubernetes-fluent-bit/ pour envoyer mes logs Kubernetes vers Logs Data Platform. Cela fonctionne plutôt bien, j'ai même réussi à ignorer le namespace `kube-system` qui est plutôt verbeux.

Cependant en voulant ajouter un filtre `modify` je me suis aperçu qu'aucun n'était exécuté. J'ai tenté un ré-ordonnancement, une aggrégation ainsi qu'une modification du `Match` mais sans succès …

Voici la version actuelle de mon fichier `filter-kubernetes.conf`:

```
[FILTER]
Name kubernetes
Match kube.*
Kube_URL https://kubernetes.default.svc:443
Kube_CA_File /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
Kube_Token_File /var/run/secrets/kubernetes.io/serviceaccount/token
Kube_Tag_Prefix kube.var.log.containers.
Merge_Log Off
Merge_Log_Key log_processed
K8S-Logging.Parser On
K8S-Logging.Exclude On
[FILTER]
Name nest
Match
Wildcard pod_name
Operation lift
Nested_under kubernetes
Add_prefix kubernetes_
[FILTER]
Name record_modifier
Match
Record X-OVH-TOKEN ${FLUENT_LDP_TOKEN}
Record fluent-bit-host ${HOSTNAME}
[FILTER]
Name modify
Match kube.

Copy kubernetes_pod_name host
Rename log short_message
Copy message raw_message
[FILTER]
Name grep
Match kube.

Exclude kubernetes_namespace_name kube-system
```

PS : Je n'ai aucun message d'erreur dans les logs de Fluent Bit

Bonjour,
Pouvez vous essayer de séparer les 3 directives modify dans 3 filtres modify afin d'identifier celui qui poserait problème ?

Comme indiqué précédemment :

* j'ai suivi la documentation OVH dans laquelle chaque filtre est séparé
* puis j'ai tenté une aggrégation comme indiqué dans la documentation de Fluent Bit

J'ai tenté de désactiver les clauses `modify` sauf `Copy message raw_message` mais j'ai eu une erreur comme quoi le champ `short_message` était manquant.

Les clauses semblent donc exécuter mais je vois pas les champs additionnels que ce soit via Graylog ou bien Elastic Search …

Oui la documentation sépare bien les différentes clauses modify. Ce n'est pas le cas de votre fichier de configuration fourni, mais si vous l'avez fait ça devrait être plus facile de débugguer votre fluent-bit.

Vous pouvez alternativement copier 'log' vers 'raw_message' avec une directive Copy puis ensuite le renommer vers 'short_message'.

Pouvez vous essayer d'ajouter un champ statique avec une directive 'Add', apparaît il dans Graylog ?

Le `Add` a bien été executé (rajouter dans le même `[FILTER]` que les autres)

Bon problème résolu c'était le champ 'log' qu'il fallait utiliser pour recopier.