Kafka 输入到 logstash 插件

Kafka input to logstash plugin

我正在尝试从 3 个服务器的 kafka 集群读取到 logstash,以便将其写入系统日志服务器。 我写了 syslog down 但即使在 logstash 文档站点上,我也无法找到如何从 kafka 读取到 logstash。

Logtash 版本:5.2.2 卡夫卡版本:0.10.2 斯卡拉版本:2_11

我去看了api版本, LOGSTASH_CORE_PLUGIN_API = "2.1.12"

这是我尝试使用的配置

input {
#    file
#    {
#        path => "/opt/logstash/NOTICE.TXT"
#
#        #DEBUG below
#        #path => "../fsdfdstt.log"
#        start_position => "beginning"
#        sincedb_path => "/dev/null"
#    }
        kafka
        {
                zk_connect => "localhost:2181"
                topic_id => "kafkatest2"
        }
}
output
{
        syslog
        {
                host => ["targetserver"]
                port => port#
        }
}

但这是我收到的错误...

[2017-03-15T10:24:17,000][ERROR][logstash.inputs.kafka    ] Unknown setting 'zk_connect' for kafka
[2017-03-15T10:24:17,008][ERROR][logstash.inputs.kafka    ] Unknown setting 'topic_id' for kafka
[2017-03-15T10:24:17,015][ERROR][logstash.agent           ] Cannot load an invalid configuration {:reason=>"Something is wrong with your configuration."}

此外,我发现有人在 kafka 输入中使用 'group_id'。我不确定我的集群是否有groupid。

谢谢, 卡兰

您的 kafka 输入配置需要改为这样:

    kafka
    {
            bootstrap_servers => "localhost:9092"
            topics => "kafkatest2"
    }

您不再连接到 Zookeeper,而是直接连接到您的 Kafka 代理之一。此外,topic_id 设置应改为 topics

您可以在以下位置找到最新的配置选项:https://www.elastic.co/guide/en/logstash/current/plugins-inputs-kafka.html