了解grok-pattern以配置LogStash for Advanced IIS日志

时间:2015-03-25 10:48:36

标签: logstash kibana logstash-grok iis-logs

我从正常的IIS日志切换到高级IIS日志,并且无法正确解析日志条目到我的弹性搜索/ Kibana设置。

有问题的条目是cs_cookie条目。

该值的条目可以是这样的:

".ASPXANONYMOUS=lCoa4IyW0AEkAAAAMWQzM2Y3YTktZTE4MC00N2Q0LWFjNzEtMmQ3NzFlODk2ZDA50; DNNPersonalization=<profile><item key=""Usability:UserMode9"" type=""System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b766a5c561934e089""><string>VIEW</string></item></profile>"

因此它包含多个空格和引号。我使用grok debugger但无法找到解决方案,请告诉我。

1 个答案:

答案 0 :(得分:1)

要构建图案,请从左侧开始,并在向右移动时检查每个图块。

从%{GREEDYDATA:remainder}开始,将所有内容匹配到名为“remaining”的字段中。

您的示例字符串以引号开头,请添加:

"%{GREEDYDATA:remainder}

现在剩下的将不再有初始报价。

下一段看起来像一个以分号结尾的键/值对,所以添加:

"%{NOTSPACE:key1}=%{NOTSPACE:value1}; %{GREEDYDATA:remainder}

查看“余数”中剩下的内容,在较高级别显示另一个键/值对。您可以将其拆分,或添加更详细的解析以从第二个值中获取碎片。

由于您的示例实际上是两个键/值对,因此您可以使用kv {}过滤器进行初始拆分,然后根据需要修改这些部分。