2014-12-26 3 views
0

나는 아래의 로그를 kibana gui를 통해 볼 수있는 탄력있는 목마름으로 캡처했습니다. 이제 로그를 날짜 시간 스탬프, 로그 수준, 개체 이름, 설명 등으로 구분하여 대시 보드에 표시해야합니다.Logstash를 사용하여 로그를 필터링하여 []로 로그 필터링

{"message":" Mon Dec 15 2014 05:55:11 [test][crypto][info] mpgw(Test): tid(135196353)[request][10.259.268.129]: certificate validation succeeded for '/C=US/O=Company/OU=Web Servers/CN=abcqa-client.company.com' against 'CompanyCA_ValCred' \r","@version":"1","@timestamp":"2014-12-15T10:55:19.168Z","host":"testserver","path":"/opt/store/device_logging/QA1_filter2.log.20141215055512"}

나는 logstash의 conf 파일을 업데이트하기 전에 테스트 grok 수 디버거 (https://grokdebug.herokuapp.com/)를 사용하고 있습니다. [], : 및()에 문제가 있습니다. 이러한 것들이 없으면 아래와 같은 출력을 얻을 수 있습니다.

입력 : 월 2014년 12월 15일 정보 mpgwTest tid135196353 요청 10.255.215.129 인증서 유효성 검사가 '/C=US/O=Company/OU=Web Servers/CN=abcqa-client.ompany.com' against 'CompanyCA_ValCred'

패턴에 대한 성공 5시 55분 11초 시험 암호화 : 내가 제대로 출력을 얻고있다 %{WORD:day} %{MONTH:month} %{MONTHDAY:monthday} %{YEAR:year} %{TIME:time} (?:%{WORD:DOMAIN}) (?:%{WORD:Objecttype}) (?:%{LOGLEVEL:level}) (?:%{WORD:DPObject}) (?:%{WORD:tid}) (?:%{WORD:flowtype}) (?:%{IP:ClientIP}) (?:%{GREEDYDATA:Description})
.

누군가가 모양을하고 [], :,()를 생략 할 수있는 방법을 알려주십시오. 빠른 답변 감사합니다.

답변

2

특수 정규식 문자 앞에 백 슬래시 ('\')를 삽입하여 이스케이프 처리 할 수 ​​있습니다.

은 예를 들어 사용자의 패턴의 첫 번째 부분은 쓸 수 있습니다 :

%{WORD:day} %{MONTH:month} %{MONTHDAY:monthday} %{YEAR:year} %{TIME:time} \[(?:%{WORD:DOMAIN})\]\[(?:%{WORD:Objecttype})\]\[(?:%{LOGLEVEL:level})\] 
관련 문제