우리 회사에서 서로 다른 두 가지 프로젝트에 대한 로그 저장을위한 서버를 설정하려고합니다. 이제는 키바나에서 그들을 가능하게하려고 노력합니다. 내 질문 : 로그 파일의 패턴이 다른 경우 어떻게 필터를 만들 수 있습니까? 예 : logstash.conf : 나는 각각있을 때,logstash : 서로 다른 패턴을 가진 복수의 로그 파일
input {
file {
type => "A"
path => "/home/logstash/A/*"
start_position => "beginning"
}
file {
type => "B"
path => "/home/logstash/B*"
start_position => "beginning"
}
}
filter {
multiline {
pattern => "^%{TIMESTAMP_ISO8601}"
negate => true
what => "previous"
}
grok {
type => A
match => [ "message", "%{TIMESTAMP_ISO8601:logdate} %{DATA:thread %{LOGLEVEL:level}\s*%{DATA:logger_name}\s*-\s*%{GREEDYDATA:log_text}"]
add_tag => [ "level_%{level}" ]
}
date {
match => ["logdate", "YYYY-MM-dd HH:mm:ss,SSS"]
}
grok {
type => B
match => [ any other pattern ...
}
}
output {
elasticsearch { embedded => true }
}
내가 각 프로젝트 (A, B, C, ...)을 자신의 필터 생성해야 할, 무엇을 내가 어떻게해야합니까 로그 파일의 다른 패턴을 다시 프로젝트로 만드시겠습니까?
감사합니다. Ben, 시도해 보겠습니다. 그리고 A와 B가 서로 다른 로그 파일 패턴을 가지고있을 때 무엇을해야합니까? – user3300940