Ich habe ein Beispielprotokoll. "a = 1 & b = 1 & c = 1"Fragen Sie nach KV in logstash
Ich habe die Parameter mit KV getrennt.
filter {
grok {
match => { "message" => "%{DATA:rawparam}}
}
KV {
source => "rawparam"
target => "param"
field_split = > "&?#"
allow_duplicate_values => false
}
}
Die Ergebnisse sind wie folgt. Ich möchte jedoch bestimmte Felder von Param auf den Root-Speicherort festlegen.
{
"type" : "log",
"rawparam" : "a=1&b=1&c=1",
"param" : {
"a" = "1",
"b" = "2",
"c" = "3"
}
}
Die Ergebnisse unten sind die Ergebnisse, die ich will. Ist das in Logstash möglich?
{
"type" : "log",
"rawparam" : "a=1&b=1&c=1",
"param" : {
"a" = "1",
"b" = "2"
},
"c" = "3"
}