2014-09-09 1 views
0

J'ai une mutation qui ajoute/fusionne le tableau de balises.Pouvez-vous vérifier un tableau null dans logstash?

if [context][tags] { 
    mutate { 
    merge => [ "tags", "context[tags]" ] 
    remove_field => [ "context[tags]" ] 
    } 
} 

Le problème est, dans les cas où [tags] est nulle pour commencer je me retrouve avec un tableau de ... [ nil, 'something1', 'something2']

est-il un moyen de tester [tags] pour null avant de fusionner, et Si oui, remplacez plutôt que fusionnez?

+1

Il semble que votre question se réponde par l'exemple ... avez-vous essayé 'if [tags]' imbriqués dans le 'if [contexte] [tags]'? – Alcanzar

+0

Je vais essayer. –

Répondre

0

Alcanzar l'avait. Code révisé qui fonctionne:

if [context][tags] { 
    if [tags] { 
     mutate { 
      merge => [ "tags", "context[tags]" ] 
      remove_field => [ "context[tags]" ] 
     } 
    } else { 
     mutate { 
      rename => [ "context[tags]", "tags" ] 
      remove_field => [ "context[tags]" ] 
     } 
    } 
} 

Il se trouve, je ne pouvais pas utiliser replace pour passer context[tags]-tags, mais rename a bien fonctionné.

Questions connexes