gpt4 book ai didi

elasticsearch - Logstash 仅索引从 mysql 到 Elasticsearch 的选择查询的一行

转载 作者:行者123 更新时间:2023-12-02 22:23:29 24 4
gpt4 key购买 nike

我正在尝试使用logstash将数据从mysql db索引到elasticsearch。 Logstash 运行没有错误,但问题是,它只索引我的 SELECT 查询中的一行。
以下是我正在使用的软件版本:

  • Elasticsearch :2.4.1
  • 日志存储:5.1.1
  • mysql: 5.7.17
  • jdbc_driver_library:mysql-connector-java-5.1.40-bin.jar

  • 我不确定这是否是因为 logstash 和 elasticsearch 版本不同。

    以下是我的管道配置:
    input {
    jdbc {
    jdbc_driver_library => "mysql-connector-java-5.1.40-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://localhost:3306/mydb"
    jdbc_user => "user"
    jdbc_password => "password"
    schedule => "* * * * *"
    statement => "SELECT * FROM employee"
    use_column_value => true
    tracking_column => "id"
    }
    }
    output {
    elasticsearch {
    index => "logstash"
    document_type => "sometype"
    document_id => "%{uid}"
    hosts => ["localhost:9200"]
    }
    }

    最佳答案

    好像是 tracking_column ( id ) 您在 jdbc 中使用的插件和 document_id ( uid ) 在 output是不同的。如果你有两个相同的怎么办,因为通过 id 很容易获得所有记录。并使用相同的 id 将它们插入 ES看起来更容易理解:

    document_id => "%{id}" <-- make sure you've got the exact spellings

    也请尝试将此行添加到您的 jdbctracking_column 之后输入:
    tracking_column_type => "numeric"

    另外要确保您没有 .logstash_jdbc_last_run运行 logstash 时存在的文件文件还包括以下行:
    clean_run => true

    所以这就是你的 jdbc 输入应该是这样的:
    jdbc {
    jdbc_driver_library => "mysql-connector-java-5.1.40-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://localhost:3306/mydb"
    jdbc_user => "user"
    jdbc_password => "password"
    schedule => "* * * * *"
    statement => "SELECT * FROM employee"
    use_column_value => true
    tracking_column => "id"
    tracking_column_type => "numeric"
    clean_run => true
    }

    除此之外,conf 似乎还不错,除非您愿意拥有 :sql_last_value如果您只想更新数据库表中新添加的记录。希望能帮助到你!

    关于elasticsearch - Logstash 仅索引从 mysql 到 Elasticsearch 的选择查询的一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41418060/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com