2017-07-25 2 views
0

Ci-dessous ma configuration de filtre de mutation, où les données de l'appelant et de l'appelé sont au format ci-dessous. Cela ne fonctionne pas car les données de l'appelant et de l'appelé sont définies sur 0 lors de la conversion de type. La conversion fonctionne correctement lorsque j'ai utilisé un filtre de mutation séparé pour la conversion de type. Pourquoi ma première configuration ne fonctionne pas?La conversion de type logstash ne fonctionne pas dans un filtre à mutation unique

"caller":"caller:123" 
"callee":"callee:123" 

mutate { 
      gsub => [ 
        #regex to remove : and every thing before it 
        "caller", "^[^:]*:", "",       
        "callee","^[^:]*:", "" 
        ] 
      convert => { 
        #type conversion from string to integer 
         "caller" => "integer" 
         "callee" => "integer"        
        }            
     } 

conversion de type fonctionne bien avec deux filtres séparés muter sont utilisés

 mutate { 
       gsub => [ 
         #regex to remove : and every thing before it 
         "caller", "^[^:]*:", "",       
         "callee","^[^:]*:", "" 
         ] 
     } 

      mutate { 
        convert => { "caller" => "integer" 
            "callee"=> "integer" 
           } 

        }  

Répondre