0

我需要摄取以下格式的 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 个问题后发挥作用。
4

0 回答 0