Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logstash 解析Apache日志时发生Grok解析错误_Logstash_Logstash Grok - Fatal编程技术网

Logstash 解析Apache日志时发生Grok解析错误

Logstash 解析Apache日志时发生Grok解析错误,logstash,logstash-grok,Logstash,Logstash Grok,好的,所以我需要一些帮助来弄清楚为什么Logstash会在我在服务器上测试时给我一个解析错误。这与来自Apache的自定义日志有关 以下是原始日志条目: 57.85.212.139 tst.testing.com [13/Mar/2015:10:10:55 -0600] "POST /app/cp/authenticate/updateLog HTTP/1.1" 200 444 195268 "-" "-" 以下是Grok模式: (%{IP:clientip}|-) %{HOSTNAME:ho

好的,所以我需要一些帮助来弄清楚为什么Logstash会在我在服务器上测试时给我一个解析错误。这与来自Apache的自定义日志有关

以下是原始日志条目:

57.85.212.139 tst.testing.com [13/Mar/2015:10:10:55 -0600] "POST /app/cp/authenticate/updateLog HTTP/1.1" 200 444 195268 "-" "-"
以下是Grok模式:

(%{IP:clientip}|-) %{HOSTNAME:host} \[%{HTTPDATE:timestamp}\] "((?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion}))|-)" %{NUMBER:response} (?:%{NUMBER:bytes}|-) %{NUMBER:duration} "(%{DATA:referer}|-)" "(%{DATA:useragent}|-)"
以下是Logstash的错误:

{"tags":["_grokparsefailure"],"@version":1,"@timestamp":"2015-03-13T16:10:55.650Z","host":"EOA-ELB-TEST","file":"/var/log/apache2/access.log","message":"57.85.212.139 tst.testing.com [13/Mar/2015:10:10:55 -0600] \"POST /app/cp/authenticate/updateLog HTTP/1.1\" 200 444 216340 \"-\" \...
这对我来说毫无意义。为什么它会传递给验证器,但在日志存储中失败

任何帮助都将不胜感激


谢谢

这是你配置中唯一的一个grok{}?可能是另一个在抛出错误吗?签出失败时的标记。是否在日志存储配置中转义双引号?因为当我将表达式插入Logstash配置并转义双引号时,它可以正常工作。编辑您的文章以包含实际的配置会很有帮助。