繁体   English   中英

Grok:如何匹配直到第一个空格(IIS日志)

[英]Grok: how to match until first space (IIS Log)

我想解析IIS日志。 可能的输入之一如下所示

2017-10-01 00:00:01 W3SVC2 xx xx.xx.xx.xx GET /CMSPages/PortalTemplate.aspx searchtext = excel-template-aa-xx-xx&xx =%2xx%2xx.com%yyyyy 443-yy。 yy.yy.yy HTTP / 1.1 Mozilla / 5.0 +(compatible; + bingbot / 2.0; ++ http://www.bing.com/bingbot.htm)--www.yyyyy.com 410 0 64 0 335 32791

我可以解析以上输入,直到searchtext但是我不知道如何获取搜索文本?

%{TIMESTAMP_ISO8601:log_timestamp}%{SPACE}%{WORD:machine}%{SPACE}%{WORD:ServerName}%{SPACE}%{IPV4:serverIP}%{SPACE}%{WORD:method}%{SPACE}%{URIPATH:uriStem}%{SPACE}%{WORD:searchTextWord}

有什么方法可以检查searchtext存在,然后获取以下文本(直到第一个空格)作为搜索文本。

查看正则表达式在这里使用

\bsearchtext=\S+

对于Gork,使其为可选:

(%{searchtext=\S+})?

结果如下:

SEARCHTEXT = Excel的模板-AA-XX-XX&XX =%的2xx%2xx.com%YYYYY


说明

  • \\b位置为单词边界
  • searchtext从字面上匹配
  • \\S+匹配任何非空白字符一次或多次

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM