之前搭建过一个ElasticSearch+logstash+kafka的日志处理系统,
刚开始运行是没有问题的、后面准备在生产环境使用时,发现logstash处理消息有问题
要么就是在kafka收集到消息很久之后才消费日志消息,要么就是启动时消费消息,之后就不再读取kafka的日志消息了,不知道是怎么回事。最开始我认为是logstash的正则
解析需要大量时间匹配过滤,造成消息堵塞,最后我直接把日志存为json直接不用正则匹配,还是有同样的问题。以下是我的logstast配置
input {
kafka {
zk_connect => "192.168.0.153:12200"
topic_id => "cias-uop"
group_id => "logstash"
rebalance_backoff_ms => 5000
rebalance_max_retries => 10
queue_size => 80000
consumer_threads => 4
fetch_message_max_bytes => 104857600
}
}
filter {
multiline{
pattern => "^\s"
what => "previous"
}
grok {
match => { }
}
}
output {
elasticsearch {
hosts => ["192.168.0.153:9200"]
index => "cias-uop-kafka"
document_type => "cias-uop-%{+YYYY.MM.dd}"
}
}