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 实例会分摊分区,不同组会各自消费一份。
写段配置
confinput { file { path => ["/var/log/app/*.log"] start_position => "end" } kafka { bootstrap_servers => "kafka:9092" topics => ["app-logs"] group_id => "logstash-app" } }