You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Logstash MQTT输入配置报错:未知设置问题求助

问题分析与解决方案

核心原因

你使用的是旧版MQTT输入插件的配置语法,但当前适配Logstash 8.11.1的MQTT插件已经调整了配置项结构,host、topics这类旧配置项不再被插件识别,因此抛出未知设置错误。

修正后的配置示例

将连接参数移入mqtt_settings哈希,并将topics替换为topic_patterns(8.x版本插件的标准配置项):

input {
  mqtt {
    client_id => "logstash"
    id => "mqtt_input"
    qos => 1
    # MQTT broker连接配置需嵌套在mqtt_settings中
    mqtt_settings => {
      host => "127.0.0.1"
      port => 1883
    }
    # 订阅主题使用topic_patterns(支持精确匹配或通配符)
    topic_patterns => ["/Application1/Message"]
  }
}

output {
  stdout { codec => rubydebug }

  elasticsearch {
    hosts => ["http://localhost:9200"]
    index => "test.logstash"
    user => "elastic"
    password => "xyz"
  }
}

额外排查建议

  1. 确认插件版本兼容性
    运行以下命令查看当前安装的MQTT插件版本,确保其与Logstash 8.11.1兼容:

    # Windows环境执行
    bin\logstash-plugin.bat list --verbose logstash-input-mqtt
    

    若版本不匹配,重新安装适配版本的插件:

    bin\logstash-plugin.bat install logstash-input-mqtt --version <对应兼容版本号>
    
  2. 查看本地插件文档
    直接查看Logstash安装目录下的插件本地文档(路径:vendor/bundle/jruby/3.1.0/gems/logstash-input-mqtt-<版本号>/README.md),获取对应版本的准确配置说明,避免在线文档的版本差异问题。

  3. 检查配置语法
    确认配置文件中所有符号(如=>、括号、引号)格式正确,无语法错误。


内容的提问来源于stack exchange,提问作者Shah Zain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 19:06:24