에 grok 수 구문 분석 증강 아파치 로그에 사용자 정의 필드를 추가하는 것은 내 문제입니다 :Logstash
IP1 IP2 - - [13/Jun/2016:14:45:05 +0200] "GET /page/requested.html HTTP/1.1" 200 4860 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0"
내가 성공적으로 내 실제 구성과 함께 이러한 로그를 분석 할 수의 난과 같이 몇 가지 표준 아파치 로그 있다고 가정 해 봅시다 Logstash는 :
input {
file {
path => '/home/user/logsDir/*'
}
}
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}"}
}
}
output {
elasticsearch { }
stdout { codec => rubydebug }
}
그러나 이러한 로그에
, 좀 기계 학습 알고리즘을 적용하고 나는 그들에게score
을 제공합니다. 그래서 새 로그 라인은 다음과 같습니다
IP1 IP2 - - [13/Jun/2016:14:45:05 +0200] "GET /page/requested.html HTTP/1.1" 200 4860 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0" 0.00950628507703
참고 이제 실제score
있는 줄의 끝에서0.00950628507703
, 나는 그래서이 줄을 구문 분석하고 싶습니다 Kibana에서 시각화를 위해 score
을 사용할 수 있습니다 (Logstash는 전체 ELK 스택에 통합되어 있습니다). 점수가 플로트로 해석 될 수 있다면 좋을 것입니다.
NB : 표준 Apache 로그 메시지 앞뒤에 점수를 배치하고 둘 사이에 어떤 종류의 문자 (현재는 공백)를 삽입 할 수 있습니다.
이 문제를 해결하는 방법에 대한 아이디어가 있으십니까?
미리 감사드립니다.