I would like some recommendation on how to parse a given xml document splited into log lines with logstash.
My document looks like this:
|2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<root xmlns="http://xxxxxxxxxxx/5.0"> |
|---|---|
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<file-version>2.2</file-version> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<generation-date>2018-06-19T07:27:48.900+02:00</generation-date> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<report> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<status> |
| 2018-06-19T07:07:24+02:00 127.0.0.1 ping - |<info id="PushOK" type="number">44</info> |
| 2018-06-19T07:07:24+02:00 127.0.0.1 ping - |<info id="PushFailure" type="number">0</info> |
| 2018-06-19T07:07:24+02:00 127.0.0.1 ping - |</status> |
| 2018-06-19T07:07:24+02:00 127.0.0.1 ping - |<task exec="2018-06-19T06:05:00.000+02:00" id="XXXXXXXXX_06_2018"> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<transaction id="1" type="dfzlmsi" start="2018-06-19T06:27:00.000+02:00" stop="2018-06-19T06:27:00.000+02:00" retry="0" status="failed" reason="lost device"/> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |</target> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<target id="xxxxx8514" type="X1"> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |<transaction id="1" type="dfzlmsi" start="2018-06-19T06:27:00.000+02:00" stop="2018-06-19T06:27:00.000+02:00" retry="0" status="failed" reason="lost device"/> |
| 2018-06-19T07:29:09+02:00 127.0.0.1 ping - |</target> |
| 2018-06-19T07:07:32+02:00 127.0.0.1 ping - |<taskStatus ko="290" ok="24" status="partially_failed"/> |
| 2018-06-19T07:07:32+02:00 127.0.0.1 ping - |</task> |
| 2018-06-19T07:07:32+02:00 127.0.0.1 ping - |</report> |
| 2018-06-19T07:07:32+02:00 127.0.0.1 ping - |</root>|
And my goal is to agregate xml report and extract data from that.