2017-05-24 4 views
0

logstash가 새로 워서 간단한 오류 일 수 있지만 내 오류 위치를 찾을 수 없습니다. 내가 logstash를 설치하고 내가 사용자 정의 자바 프로그램에서 생성하는 몇 가지 로그를 구문 분석하려고합니다. 나는 확실히 특정 라인을 찾고 있어요 :logstash grok 구문 분석 오류 날짜 형식

ERROR ProcessStatus 05/24/2017 12:13:58 RETC:0 : Request.evaluate:PDP Response decision: Permit 
ERROR ProcessStatus 05/24/2017 12:13:58 RETC:0 : Request.evaluate:PDP Response decision: NotApplicable 

내가 정의한 다음과 같은 구성 파일 :

: 라인이 나는 구문 분석 오류가 발생하고 로그 파일에 수신

input { 
    file { 
     type => "log" 
     path => [ "/var/log/tomcat7/catalina.out" ] 
    } 
} 

filter { 
    grok { 
     match => [ "message" , "%{WORD:text1} %{WORD:text2} \[%{DATA:date}\] %{WORD:text3}:%{NUMBER:num1} : %{WORD:text4}.%{WORD:text5}:%{WORD:text6} %{WORD:text7} %{WORD:text8} %{WORD:decision}"] 
     remove_field => [ "message" ] 
    } 
    date { 
     match => [ "timestamp", "MM/dd/YYYY HH:mm:ss" ] 
     remove_field => [ "timestamp" ] 
    } 
} 

output { 
    stdout { 
    codec => rubydebug 
    } 
} 

{ 
      "path" => "/var/log/tomcat7/catalina.out", 
    "@timestamp" => 2017-05-24T14:31:18.494Z, 
     "@version" => "1", 
      "host" => "acio-web01", 
     "message" => "ERROR ProcessStatus 05/24/2017 16:31:17 RETC:0 : Request.evaluate:PDP Response decision: Indeterminate", 
      "type" => "log", 
      "tags" => [ 
     [0] "_grokparsefailure" 
    ] 
} 

구문 분석 오류가 날짜 형식으로 볼 수있는 부분이 있지만 정확한 정의 방법을 찾을 수 없었습니다. 내가 뭘 잘못하고 있는지 알 겠어?

답변

1

귀하의 grok 패턴이 귀하의 데이터와 일치하지 않습니다. 표시되는 메시지에는 날짜가 표시되지 않지만 패턴에는 있다고 가정합니다.

로그 라인과 패턴을 https://grokdebug.herokuapp.com/에 붙여넣고 일치시킬 때까지 재생할 수 있습니다.