반응형
1. 다른 종류의 로그를 각각 다른 index로 파싱 하고자 하는 경우 logstash를 이용해도 되지만 elasticsearch로 바로 쏘는 경우나 수집단계에서 index를 구분 하고 자 하는 경우 filebeat의 설정을 이용하면 됨.
2. filebeat.yml
- fields - log_topics를 이용하여 구분
# ============================== Filebeat inputs ===============================
filebeat.inputs:
# Each - is an input. Most options can be set at the input level, so
# you can use different inputs for various configurations.
# Below are the input specific configurations.
- type: log
enabled: true
paths:
- {log path}/*.log
fields:
log_topics: "{log_topics1}"
fields_under_root: true
- type: log
enabled: true
paths:
- {log path}/*.log
fields:
log_topics: "{log_topics2}"
fields_under_root: true
...
3. logstash 설정
- output의 분기문을 이용하여 간단히 index를 구분하여줌.
input {
beats {
port => 5044
host => "0.0.0.0"
}
}
filter {
json {
source => "message"
}
mutate {
rename => ["host", "server"]
convert => {"server" => "string"}
}
}
output {
if [log_topics] == "{log_topics1}" {
elasticsearch {
hosts => "http://localhost:9200"
index => "{index1}"
}
} else if [log_topics] == "{log_topics2}" {
elasticsearch {
hosts => "http://localhost:9200"
index => "{index2}"
}
}
}
반응형
'Monitoring Tools > ELK Stack' 카테고리의 다른 글
7. Elastalert (0) | 2022.04.26 |
---|---|
6.2 filebeat offset 초기화 (0) | 2022.04.22 |
6. filebeat agent 설정 (0) | 2022.04.22 |
5.2 grok pattern을 이용한 nginx log 파싱 (0) | 2022.04.22 |
5.1 [logstash filter] 시간대 변경 (0) | 2022.04.22 |