logstash _grokparsefailure一直以来。即使是调试人员也说它很好

时间:2015-08-23 13:04:49

标签: logstash grok logstash-grok

这是我的日志文件:

  

a491489d-3b68-4e19-ba08-cfbe0d910fb9 |异常| f329ba4e-829f-49d1-95fc-e15c5b338d66 | Portal.NlogTester | 8664e362-f63d-4d10-8a23-3b86b9f22cc7 |门户| TESTER |的button1_Click | 2015年8月23日   12:51:28 | DivideByZeroException | TransactionLog |试图除以   零。| System.DivideByZeroException:尝试除以零。在   Nlog2Esbtest.WebForm1.Button1_Click(Object sender,EventArgs e)in   c:\ Users \ elitzur.eisner \ Documents \ Visual Studio   2012 \ Projects \ Nlog2Esbtest \ Nlog2Esbtest \ WebForm1.aspx.cs:第24行

这是我的logstash配置:

input {
  file {
    path => "c:\logs\log1.txt"
	start_position => "beginning"
  }
}
filter {	
			grok {
			match => { "message" => "%{UUID:UserId}\|%{WORD:LogType}\|%{UUID:TransactionCode}\|%{JAVACLASS:ServiceName}\|%{UUID:ServiceId}\|%{WORD:Context}\|%{WORD:EntityClass}\|%{WORD:Methods}\|%{DATESTAMP:ActivityTime}\|%{WORD:LogSubType}\|%{WORD:path}\|%{GREEDYDATA:Title}" }
			tag_on_failure => []
			 }
		}	
output {
			stdout{}
			file {path => "c:\logs\logout1.txt" }

        }

无论我做什么,我都会在输出文件中获得2行:

  

{ “@时间戳”: “2015-08-23T12:58:55.039Z”, “标签”:[ “_ grokparsefailure”]}

然后:

  

{ “消息”:“059306b7-bee6-421f-a93b-af120a908ab5 |异常| 016eb0f4-45b9-4e58-a5d6-98f3c50d207a | Portal.NlogTester | 8664e362-f63d-4d10-8a23-3b86b9f22cc7 |门户| TESTER |的button1_Click | 2015年8月23日   12:58:54 | DivideByZeroException | TransactionLog |试图除以   零。| System.DivideByZeroException:尝试除以零。在   Nlog2Esbtest.WebForm1.Button1_Click(Object sender,EventArgs e)in   c:\ Users \ elitzur.eisner \ Documents \ Visual Studio   2012 \项目\ Nlog2Esbtest \ Nlog2Esbtest \ WebForm1.aspx.cs中:行   24 \ r “ ”@版本“: ”1“, ”@时间戳“: ”2015-08-23T12:58:55.255Z“, ”宿主“: ”SlavaNili“, ”路径“:[” C:\日志\ log1.txt”, “TransactionLog”], “用户ID”: “059306b7-bee6-421f-a93b-af120a908ab5”, “日志类型”: “异常”, “TransactionCode”: “016eb0f4-45b9-4e58-a5d6-98f3c50d207a” “服务名称”: “Portal.NlogTester”, “服务ID”: “8664e362-f63d-4d10-8a23-3b86b9f22cc7”, “语境”: “门户”, “EntityClass”: “测试”, “方法”: “的button1_Click” “ActivityTime”:“2015年8月23日   12:58:54“,”LogSubType“:”DivideByZeroException“,”Title“:”试图   除以零。| System.DivideByZeroException:试图除以   零。在Nlog2Esbtest.WebForm1.Button1_Click(对象发送者,   EventArgs e)在c:\ Users \ elitzur.eisner \ Documents \ Visual Studio中   2012 \项目\ Nlog2Esbtest \ Nlog2Esbtest \ WebForm1.aspx.cs中:行   24 \ R“}

第二行很好。但我仍然坚持这个grokfailure forsome的原因。 任何人都有任何线索?

P.S。我已经用--configtest

判断配置是否正常

感谢您的帮助:))

2 个答案:

答案 0 :(得分:0)

你的帖子有点乱,但是......

在你的grok {}中,你有tag_on_failure = [],所以logstash根本不应该设置grokparsefailure消息。

我猜你的配置中还有其他grok {}节,但是失败了。尝试将tag_on_failure设置为每个独特的内容;这将确定哪一个实际上是失败的。

答案 1 :(得分:0)

我最终重新启动了JAVA.exe服务...这解决了我的问题。

也许logstash正在运行我的配置的旧版本......但不管怎样,现在都很好。