Я пытаюсь структурно отфильтровать свой журнал с помощью фильтра grok в logstash
.
Это образец журнала:
5d563f04-b5d8-4b8d-b3ac-df26028c3719 SoapRequest CheckUserPassword <?xml version=\"1.0\" encoding=\"utf-8\"?><soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><soap:Body><CheckUserPassword xmlns=\"http://users.tvinci.com/\"><sWSUserName>users_199</sWSUserName><sWSPassword>11111</sWSPassword><sUserName>test</sUserName><sPassword>123456</sPassword><bPreventDoubleLogins>false</bPreventDoubleLogins></CheckUserPassword></soap:Body></soap:Envelope>
И это мой шаблон соответствия фильтру Grok:
%{DATA:method_id} %{WORD:method_type} %{WORD:method} %{GREEDYDATA:data}
Я получаю следующую структуру:
"method_id" => "963ad634-92d6-4a6c-9e6b-ef57e6bcd374",
"method_type" => "SoapRequest",
"method" => "CheckUserPassword",
"data" => " <?xml version=\"1.0\" encoding=\"utf-8\"?><soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><soap:Body><CheckUserPassword"
Какая правильная структура, кроме поля данных, здесь я ожидаю увидеть весь SOAP XML (как вы можете видеть, он разрезан посередине)
Какие-либо предложения?