如何在logstash中解析XML日志文件

Man*_*ski 2 logstash kibana logstash-grok kibana-4

我有一个示例日志文件,如下所示

<error message="file missing">
      <value>01</value>
 </error>
<dealer id="01" data="some text">Approved</dealer>
Run Code Online (Sandbox Code Playgroud)

我想解析上面的代码,并希望在Kibana中显示数据@message="file missing", @value="01", @dealer_id="01", @dealer_data = "some text".

我是ELK框架的新手.我尝试过使用xpath过滤器,但如果有人帮我提供示例代码就没有运气,这意味着它将是一个很好的帮助.

小智 5

可以使用xpath获取数据,如下所示:

    xml {
      source => "message"
      store_xml => false
      xpath => {
        "//site/text()" => "site"
        "//dateCreation[1]/text()" => "date_creation"
        "//commande:Tiers[1]/identifiant/text()" => "tiers_id"
      }
    }
Run Code Online (Sandbox Code Playgroud)

然后xpath的每个结果都存储在目标字段中您可以替换/删除事件的现有字段以仅保留所需的数据.