It's formatted using CEF. Logstash has a CEF codec plugin but it mostly just rewrites the keys or field names. Any items withe the string "Label" in the key are in fact providing the key name for the related non-label key=value So: cs6Label=Pants cs6=True Can actually be consolidated to Pants: True I recommend checking out nxlog as it has a very straight forward CEF->JSON conversion that would allow you to feed in json to logstash and hit the ground running. Then you could construct a bunch of mutate filters like below to consolidate those fields..... # Match labels to values and remove other fields if([deviceCustomString1] and [deviceCustomString1Label]) { mutate { add_field => [ "%{deviceCustomString1Label}","%{deviceCustomString1}"] remove_field => ["deviceCustomString1Label"] remove_field => ["deviceCustomString1"] } } if([deviceCustomString2] and [deviceCustomString2Label]) { mutate { add_field => [ "%{deviceCustomString2Label}","%{deviceCustomString2}"] remove_field => ["deviceCustomString2Label"] remove_field => ["deviceCustomString2"] } } if([deviceCustomString3] and [deviceCustomString3Label]) { mutate { add_field => [ "%{deviceCustomString3Label}","%{deviceCustomString3}"] remove_field => ["deviceCustomString3Label"] remove_field => ["deviceCustomString3"] } } if([deviceCustomString4] and [deviceCustomString4Label]) { mutate { add_field => [ "%{deviceCustomString4Label}","%{deviceCustomString4}"] remove_field => ["deviceCustomString4Label"] remove_field => ["deviceCustomString4"] } } if([deviceCustomString5] and [deviceCustomString5Label]) { mutate { add_field => [ "%{deviceCustomString5Label}","%{deviceCustomString5}"] remove_field => ["deviceCustomString5Label"] remove_field => ["deviceCustomString5"] } } if([deviceCustomString6] and [deviceCustomString6Label]) { mutate { add_field => [ "%{deviceCustomString6Label}","%{deviceCustomString6}"] remove_field => ["deviceCustomString6Label"] remove_field => ["deviceCustomString6"] } } if([deviceCustomNumber1Label] and [deviceCustomNumber1]) { mutate { add_field => [ "%{deviceCustomNumber1Label}","%{deviceCustomNumber1}"] remove_field => ["deviceCustomNumber1Label"] remove_field => ["deviceCustomNumber1"] } } if([deviceCustomNumber2Label] and [deviceCustomNumber2]) { mutate { add_field => [ "%{deviceCustomNumber2Label}","%{deviceCustomNumber2}"] remove_field => ["deviceCustomNumber2Label"] remove_field => ["deviceCustomNumber2"] } } if([deviceCustomNumber3Label] and [deviceCustomNumber3]) { mutate { add_field => [ "%{deviceCustomNumber3Label}","%{deviceCustomNumber3}"] remove_field => ["deviceCustomNumber3Label"] remove_field => ["deviceCustomNumber3"] } } if([deviceCustomNumber4Label] and [deviceCustomNumber4]) { mutate { add_field => [ "%{deviceCustomNumber4Label}","%{deviceCustomNumber4}"] remove_field => ["deviceCustomNumber4Label"] remove_field => ["deviceCustomNumber4"] } } if([deviceCustomNumber5Label] and [deviceCustomNumber5]) { mutate { add_field => [ "%{deviceCustomNumber5Label}","%{deviceCustomNumber5}"] remove_field => ["deviceCustomNumber5Label"] remove_field => ["deviceCustomNumber5"] } } if([deviceCustomNumber6Label] and [deviceCustomNumber6]) { mutate { add_field => [ "%{deviceCustomNumber6Label}","%{deviceCustomNumber6}"] remove_field => ["deviceCustomNumber6Label"] remove_field => ["deviceCustomNumber6"] } } if([flexNumber1Label] and [flexNumber1]) { mutate { add_field => [ "%{flexNumber1Label}","%{flexNumber1}"] remove_field => ["flexNumber1Label"] remove_field => ["flexNumber1"] } } if([flexNumber2Label] and [flexNumber2]) { mutate { add_field => [ "%{flexNumber2Label}","%{flexNumber2}"] remove_field => ["flexNumber2Label"] remove_field => ["flexNumber2"] } } if([flexNumber3Label] and [flexNumber3]) { mutate { add_field => [ "%{flexNumber3Label}","%{flexNumber3}"] remove_field => ["flexNumber3Label"] remove_field => ["flexNumber3"] } } if([flexNumber4Label] and [flexNumber4]) { mutate { add_field => [ "%{flexNumber4Label}","%{flexNumber4}"] remove_field => ["flexNumber4Label"] remove_field => ["flexNumber4"] } } if([flexNumber5Label] and [flexNumber5]) { mutate { add_field => [ "%{flexNumber5Label}","%{flexNumber5}"] remove_field => ["flexNumber5Label"] remove_field => ["flexNumber5"] } }
... View more