F5 高速日志记录和 Logstash GROK

F5 高速日志记录和 Logstash GROK

我尝试使用 HSL 和 Logstash 直接从我们的 F5 格式化日志。

我从网站上直接复制了示例配置,因为它包含了我想要的大部分信息 logstash 示例

我的 F5 现在正在将日志输出到我的 elasticsearch 集群,并使用标签“message:”标记下面的示例日志数据,但是当我尝试应用似乎正确的示例 grok 过滤器时;进入我的 logstash conf 文件,我收到一个 _grokparseerror。

有人看到我的过滤器哪里出了问题吗?

样本日志

12.123.123.254 [13/Feb/2016:16:04:13 +0000] 123.16.1.23 /SITE/SITE_SSLV2 /SITE/SITE_SSLV2_pool 123.16.1.156 443 '/' 'GET / HTTP/1.1' 200 21003 217 'https://w2.website.co.uk/Planner/Planner' 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.109 Safari/537.36'

样本 GROK

%{IP:clientip} \[%{HTTPDATE:timestamp}\] %{IP:virtual_ip} %{DATA:virtual_name} %{DATA:virtual_pool_name} %{DATA:server} %{NUMBER:server_port} \"%{DATA:path}\" \"(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion})?|%{DATA:rawrequest})\" %{NUMBER:response:int} %{NUMBER:bytes:int} %{NUMBER:response_ms:int} %{QS:referrer} %{QS:agent}

我的配置

filter {
  if [type] == "f5-access" {
    grok {
        match => { "message" => "%{IP:clientip} \[%{HTTPDATE:timestamp}\] %{IP:virtual_ip} %{DATA:virtual_name} %{DATA:virtual_pool_name} %{DATA:server} %{NUMBER:server_port} \"%{DATA:path}\" \"(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion})?|%{DATA:rawrequest})\" %{NUMBER:response:int} %{NUMBER:bytes:int} %{NUMBER:response_ms:int} %{QS:referrer} %{QS:agent}"}
}
    geoip {
      source => "clientip"
    }
  }
}

相关内容