2016-05-12 2 views
0

Ниже приводится моя сценарий:Как обработать поле log4j% M (имя метода), используя шаблон grok?

Не удалось получить идентификатор запроса «9bb0c7bcf81425fd6773», обработанный в поле Request-ID?

Пример сообщения:

05/11/2016 10:55:43.167|INFO|com.abc.requestidgenerator.Tester$.main(UniqueIDGenerator.scala:95)|9bb0c7bcf81425fd6773|This is Debug Message 

Грок картина:

match => { "message" => "%{DATESTAMP:Date-Time}\|%{LOGLEVEL:Level}%{SPACE}\|%{NOTSPACE:Method}\|%{USERNAME:Request-ID}"} 

Grokpattern выход

{ 
      "@timestamp" => "2016-05-12T11:44:55.100Z", 
       "message" => "05/11/2016 10:55:43.167|INFO |com.abc.requestidgenerator.Tester$.main(UniqueIDGenerator.scala:95)|9bb0c7bcf81425fd6773|This is Debug Message...", 
      "Date-Time" => "05/11/2016 10:55:43.167", 
       "Level" => "INFO", 
       "Method" => "com.abc.requestidgenerator.Tester$.main(UniqueIDGenerator.scala:95)|9bb0c7bcf81425fd6773", 
      "Request-ID" => "This", 
     "ALCH_TENANT_ID" => "da5109ef-c1c0-499b-86ee-a8fd55203bb6" 
} 
+0

вы, кажется, имеют различный характер ГРОК чем вы писали, я не вижу 'ALCH_TENANT_ID' в шаблоне –

ответ

0

Вместо того, чтобы U поющий NOTSPACE использование DATA. NOTSPACE пытается захватить все до места, но до вашего сообщения нет пробелов. DATA будет лениться захватить как можно больше символов новой строки, не нарушая регулярное выражение.

...\|%{DATA:Method}\|...