我正在使用 Logstash JDBC 输入插件从数据库中读取数据并将其索引到 Elastic Search 中。我为每个客户都有单独的数据库,我想动态地一一连接到它们以获取数据?
JDBC-Input Plugin 或 Logstash 中是否有任何规定或参数可以连接到多个数据库?
例如
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"
//MYDB will be set dynamically.
jdbc_user => "mysql"
parameters => { "favorite_artist" => "Beethoven" }
schedule => "* * * * *"
statement => "SELECT * from songs where artist = :favorite_artist"
}
}
我能想到的唯一解决方案是编写脚本来更新logstash配置以一一连接到指定的数据库并通过它运行logstash。