Postgresql 如何从JDBC将postgres数据库与logstash连接以导入数据?
我正在尝试将PostgreSQL数据库与Logstash连接,以便将数据从postgres导入elasticsearch。 我正在使用JDBC驱动程序连接Logstash和postgres 但我有以下错误 [2019-06-27T13:04:05943][ERROR][logstash.javapipeline]插件 有一个无法恢复的错误。将重新启动此插件。 管道id:main插件:postgres,jdbc\u密码=>,语句=>SELECT *来自公共。\contacts\;,jdbc_驱动程序_库=>postgresql-42.2.6.jar, jdbc_连接_字符串=>jd bc:postgresql://localhost:5432/LogstashTest, id=>a76a604bb9cb591dd4a19afc95e03873023e008c564101b4ac19aefe30071213, jdbc_driver_class=>org.postgresql.driver,enable_metric=>true, 编解码器=>普通\u 8f80bf3a-29fe-49e8-86b1-c94e9a298ffb,启用\u度量=>真, charset=>UTF-8>,jdbc\u paging\u enabled=>false,jdbc\u page\u size=>100000, jdbc\u验证\u连接=>false,jdbc\u验证\u超时= 3600,jdbc\u池\u超时=>5,sql\u日志\u级别=>info,连接\u重试\u尝试=>1, 连接重试尝试等待时间=>0.5, 参数=>{sql\u last\u value=>1970-01-01 00:00:00 UTC}, last\u run\u metadata\u path=>C:\Users\roshan/.logstash\u jdbc\u last\u run, 使用列值=>false,跟踪列类型=>numeric, clean_run=>false,record_last_run=>true,小写_列名称=>true> 错误:org.postgresql.Driver未加载。你确定包括在内吗 在:jdbc\u driver\u库中正确的jdbc驱动程序?例外情况: LogStash::ConfigurationError堆栈: D:/Swares/logstash-7.2.0/logstash-7.2.0/vendor/bundle/jruby/2.5.0/gems/logstash-input-jdbc-4.3.13/lib/logstash/plugin\u mixins/jdbc/jdbc.rb:163:in 打开_jdbc_连接' D:/Swares/logstash-7.2.0/logstash-7.2.0/vendor/bundle/jruby/2.5.0/gems/logstash-input-jdbc-4.3.13/lib/logstash/plugin\u mixins/jdbc/jdbc.rb:221:in 执行_语句' D:/Swares/logstash-7.2.0/logstash-7.2.0/vendor/bundle/jruby/2.5.0/gems/logstash-input-jdbc-4.3.13/lib/logstash/inputs/jdbc.rb:277:in execute_query' D:/Swares/logstash-7.2.0/logstash-7.2.0/vendor/bundle/jruby/2.5.0/gems/logstash-input-jdbc-4.3.13/lib/logstash/inputs/jdbc.rb:263:inrun' D:/Swares/logstash-7.2.0/logstash-7.2.0/logstash core/lib/logstash/java_pipeline.rb:309:in 输入工 D:/Swares/logstash-7.2.0/logstash-7.2.0/logstash-core/lib/logstash/java_pipeline.rb:302:in “启动\输入”中的块 [2019-06-27T13:04:06946][ERROR][logstash.inputs.jdbc]无法访问 加载postgresql-42.2.6.jar{:异常=>} 我的配置是 Java版本-1.8.0_211 postgres PostgreSQL 11.0 logstash-7.2.0 这是我的日志文件Postgresql 如何从JDBC将postgres数据库与logstash连接以导入数据?,postgresql,jdbc,logstash,logstash-jdbc,Postgresql,Jdbc,Logstash,Logstash Jdbc,我正在尝试将PostgreSQL数据库与Logstash连接,以便将数据从postgres导入elasticsearch。 我正在使用JDBC驱动程序连接Logstash和postgres 但我有以下错误 [2019-06-27T13:04:05943][ERROR][logstash.javapipeline]插件 有一个无法恢复的错误。将重新启动此插件。 管道id:main插件:postgres,jdbc\u密码=>,语句=>SELECT *来自公共。\contacts\;,jdbc_驱动程
input {
jdbc{
#input configuration
jdbc_driver_library => "postgresql-42.2.6.jar"
jdbc_driver_class => "org.postgresql.Driver"
jdbc_connection_string => "jdbc:postgresql://localhost:5432/LogstashTest"
jdbc_user => "postgres"
jdbc_password => "root"
statement => 'SELECT * FROM public."contacts";'
}
}
output{
stdout { codec => json_lines }
}
当您将不正确的配置文件传递到Logstash时,可能会由于PostgreSQL JDBC驱动程序损坏而出现此问题。我有同样的问题,你需要检查你的JDBC驱动程序文件 加载postgresql-42.2.6.jar失败,这听起来像是postgresql-42.2.6.jar丢失了,或者它不在logstash期望的位置。@markrottveel没有,我已将它放在bin中