input{
tcp {
mode => "server"
host => "0.0.0.0"
port => 5000
codec => json_lines
type=> "A"
}
tcp {
mode => "server"
host => "0.0.0.0"
port => 4999
codec => json_lines
type=> "B"
}
}
filter{
if[type] == "A"{
if([message] =~ "^(?!.*?登入日志).*$") {
### 丢棄
drop{}
}
}
}
output{
if[type] == "A"{
elasticsearch{
hosts=>["192.168.4XX.XX:9200"]
index => "A-%{+YYYY.MM.dd}"
}
}
if[type] == "B"{
elasticsearch{
hosts=>["192.168.XX.XX:9200"]
index => "B-%{+YYYY.MM.dd}"
}
}
}
配置背景:1.從兩台伺服器上分别擷取日志 且日志索引不同(為A,B)
2.A服務日志進行攔截 如果沒有帶"登入日志"字樣的日志丢棄
知識點 :1 判斷語句 if寫法
2 過濾器使用
3 通過日期生成相同業務的不同索引(可以通過index template查詢)