5月30日 12:39

Logstash 常用输入插件有哪些?File 和 Kafka 怎么配置?

Logstash 输入插件负责从数据源读取事件,常见的有 File、Beats、Kafka、HTTP、TCP/UDP、Syslog、JDBC、Redis。File 适合读取本机或挂载目录里的日志,Kafka 适合高吞吐、可回放的日志总线。生产里通常让 Filebeat 采集文件,再发给 Logstash;只有需要复杂本地读取规则时,才直接用 File input。

追问

File input 的 start_position 有什么坑?

它只在文件第一次被 Logstash 发现时生效。读到哪里由 sincedb 记录,改成 beginning 不会自动重读旧文件。

Kafka input 为什么要配 group_id?

同组多个 Logstash 实例会分摊分区,不同组会各自消费一份。

写段配置

conf
input { file { path => ["/var/log/app/*.log"] start_position => "end" } kafka { bootstrap_servers => "kafka:9092" topics => ["app-logs"] group_id => "logstash-app" } }
标签:Logstash