我需要摄取以下格式的 json 事件
{
"test1": {some nested json here},
"test2": {some nested json here},
"test3": {some nested json here},
"test4": {some nested json here}
}
我有3个问题:
当我分开
json { source => "message" } split { field => "[message][test1]" target => "test1" add_tag => ["test1"] }
这个标签没有出现在任何地方(我想稍后在输出中使用它
第二个是输出:现在我可以摄取:
tcp { codec => line { format => "%{test1}" } host => "127.0.0.1" port => 7515 id => "TCP-SPLUNK-test1" }
我可以对所有拆分项目做同样的事情,但我想有更聪明的方法来做。
- 最后一个是与识别事件相关的问题,例如 if format is { "test1":{},"test2":{},"test3":{},"test4":{} } then do something, else do something different我想这应该用 grok 来完成,但我会在设法解决前 2 个问题后发挥作用。