如何保持 Logstash 运行以便将数据从 RDBMS 同步到 ES?

2024-01-10

我是 ELK 堆栈的新手,所以请原谅我的无知。我已经能够让 Logstash 将数据从我的数据库发送到 Elasticsearch,但传输完成后它就会退出。我如何保持它运行以使它们保持同步?谢谢


您需要指定一个schedule https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html#plugins-inputs-jdbc-schedule在你的jdbc input:

The schedule below (* * * * *)将每分钟运行一次,并从数据库中选择记录,并且仅选择上次运行查询后已更新的记录。你的updated时间戳字段的名称可能有所不同,请随意调整以适合您的情况。

input {
  jdbc {
    jdbc_driver_library => "mysql-connector-java-5.1.36-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://localhost:3306/mydb"
    jdbc_user => "mysql"
    parameters => { "some_field" => "value" }
    schedule => "* * * * *"
    statement => "SELECT * from songs WHERE some_field = :some_field AND updated > :sql_last_value"
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何保持 Logstash 运行以便将数据从 RDBMS 同步到 ES? 的相关文章

随机推荐