问题标签 [logstash-jdbc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
297 浏览

elasticsearch - Logstash 作为带有 JDBC 输入的服务

我目前有一项服务,它运行多个查询来在我的数据库中构建数据。然后它使用 Logstash 的 JDBC 输入插件将数据发送到 Elastic Search。问题是 Logstash 需要相当多的时间引导(有时超过将数据发送到 Elastic Search 所需的时间)。

我决定探索让 Logstash 作为服务运行以消除这个引导时间,但是似乎没有办法让它作为服务运行并接受“请求”来运行 JDBC 语句。

最接近的似乎是使用 TCP/HTTP/Websocket 插件从我的服务接收数据,然后将其发送到 Elastic Search。

尝试开发类似的东西是否有意义,或者使用我的服务直接与 Elastic Search 通信会更好吗?

我希望我的问题足够清楚,谢谢。

0 投票
2 回答
817 浏览

elasticsearch - Logstash 2.3.4 如何使用logstash-jdbc插件在elasticsearch中加载嵌套文档

我目前正在使用elasticsearch 2.3.4 和logstash 2.3.4 使用logstash-jdbc 插件将Oracle db 中的关系数据加载到我的elasticsearch 索引中。正如各种帖子中所建议的那样,我为此使用了聚合过滤器。我仍然无法在文档中加载内部嵌套对象。这些值未映射到字段并显示为 NULL。

我有两个具有以下数据的相关实体:

这是我的映射:

这是我的logstash配置:

当我对所有文档执行 XGET 时: curl -XGET 'localhost:9200/my_index/_search/?pretty=true&q=

这些值未映射到字段并显示为 NULL:

rubydebug 建议将值设置为“nil”。谁能帮我解决我在这里做错的事情?

这是 id = 1 的文档的标准输出片段:

0 投票
0 回答
385 浏览

mongodb - 如何为logstash使用mongo db插件?

我需要从 mongo db 将数据推送到弹性搜索。没有可用于 mongodb 的官方插件。的,如何从 mongodb 导入数据并推送到弹性搜索。

我尝试使用这个GIT ,但是我无法安装插件。使用此 cmnd 安装 mongo 插件时出现错误 bin/plugin install logstash-input-mongodb

错误:bash:bin/plugin:没有这样的文件或目录请帮我解决问题并将数据推送到弹性搜索

0 投票
1 回答
40 浏览

jdbc - 如何关闭对logstash输出结果集中有多少行的预检查

我正在尝试关闭预选 logstash 以确定行数,但 ExaSol DB 不支持任何聚合中的任何限制,有没有办法在 logstash 中将其关闭?

Logstash 错误日志:

[2019-06-07T12:28:00,834][ERROR][logstash.inputs.jdbc] Java::JavaSql::SQLException:聚合选择中不允许限制 [第 1 行,第 127 列](会话:1635677142479452406):SELECT 计数(*) AS "COUNT" FROM (select local_date, LOCAL_HOUR, events from DWH_MON.V.M_EVENTS limit 1) AS "T1" LIMIT 1

[2019-06-07T12:28:00,838][WARN][logstash.inputs.jdbc] 执行 JDBC 查询时出现异常 {:exception=>#}

由于 logstash 想要查看预期有多少行,它使用限制 1,但 exasol 无法处理聚合的任何限制。

0 投票
1 回答
200 浏览

mysql - Logstash not populating ElasticSearch from MySQL

I'm currently in the early stages of setting up some Kibana dashboards using the ELK stack and a MySQL database. According to the logstash config check utility, I have a valid .conf file, but nothing is showing up in elastic.

First off, my DB is populated:

And here is my logstash conf file:

When I start logstash:

And when I check elastic:

So really not sure where to go from here -- any help would be appreciated!

0 投票
1 回答
408 浏览

mysql - 具有巨大 mysql 结果集的 logstash

我正在处理从 MySQL 到 elasticsearch 的复制数据,所以我正在使用 logstash 进行复制,但问题是在 mysql 中有一个产品表有很多关系,并且选择查询包含 46 个左外连接,所以返回的结果非常大它仅针对表产品的单个记录返回大约 50000 (50k) 行,这使得复制性能很慢,所以我需要询问是否有其他解决方案可以进行复制以及如何解决性能问题并产生巨大的结果

产品样本及其关系(不是全部):

产品及其关系

这就是弹性搜索映射:

弹性搜索映射

0 投票
0 回答
195 浏览

elasticsearch - 避免通过多个 select 语句连接 - Logstash

我正在使用 Logstash 将数据从 mysql 迁移到 elasticsearch。我的 mysql 数据库有一个名为 product 的主表,它有很多关系,要选择的查询包含大约 46 个左外连接,并且返回的结果对于一条记录来说是非常大的(50k)行。所以我打算把查询分成多个选择。我使用了 Logstash 的jdbc_streaming插件。但是,我想知道我的解决方案是否合乎逻辑且正确?

这是描述我的实现的简单配置文件(不是所有关系):

0 投票
1 回答
1026 浏览

logstash - TypeError:没有将整数隐式转换为字符串

在我的管道中出现了这个问题:TypeError: no implicit conversion of Integer into String

我正在使用 centos7 并且我已经通过 yum 安装了它

预计将数据插入elasticsearch

0 投票
0 回答
716 浏览

jdbc - LogStash JDBC 输入调度问题 - 是否可以在上一个查询完成后一分钟运行查询

我正在使用 LogStash 中的 Jdbc 输入每分钟从 MS SQL 数据库中检索一次数据。

通常它工作正常。但是我们知道数据库性能不是很可靠,有时查询需要超过一分钟才能返回。有时事件 5 分钟。

但是 Jdbc 调度程序仍然每分钟运行一次查询,因此会出现多个查询同时运行的情况。这给数据库带来了额外的压力,一段时间后,有 20 个几乎相同的查询同时运行。

我想我不是第一个遇到这个问题的人。我确信有某种方法可以让 Jdbc在前一个查询完成后一分钟运行下一个查询。我对吗?

0 投票
1 回答
4150 浏览

postgresql - 如何将 postgres 数据库与来自 JDBC 的 logstash 连接以导入数据?

我正在尝试连接PostgreSQL数据库Logstash以将数据postgreselasticsearch. 我正在使用 JDBC 驱动程序来Logstash连接postgres.

但我收到以下错误

[2019-06-27T13:04:05,943][ERROR][logstash.javapipeline] 插件出现不可恢复的错误。将重新启动此插件。
Pipeline_id:main Plugin: "postgres", jdbc_password=>, statement=>"SELECT * FROM public.\"contacts\";", jdbc_driver_library=>"postgresql-42.2.6.jar", jdbc_connection_string=>"jd bc: postgresql://localhost:5432/LogstashTest", id=>"a76a604bb9cb591dd4a19afc95e03873023e008c564101b4ac19aefe30071213", jdbc_driver_class=>"org.postgresql.Driver", enable_metric=>true, codec=>"plain_8f80bf3a-29fe-49e8-86b1-c94e9a298ffb", enable_metric =>true, charset=>"UTF-8">, jdbc_paging_enabled=>false, jdbc_page_size=>100000, jdbc_validate_connection=>false,

3600, jdbc_pool_timeout=>5, sql_log_level=>"info", connection_retry_attempts=>1, connection_retry_attempts_wait_time=>0.5, 参数=>{"sql_last_value"=>1970-01-01 00:00:00 UTC}, last_run_metadata_path=>" C :\Users\roshan/.logstash_jdbc_last_run", use_column_value=>false, tracking_column_type=>"numeric", clean_run=>false, record_last_run=>true, lowercase_column_names=>true> 错误:org.postgresql.Driver 未加载。你确定你在 :jdbc_driver_library 中包含了正确的 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_mixins/jdbc/jdbc.rb:163:in open_jdbc_connection' 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_mixins/jdbc/jdbc.rb:221:in execute_statement' 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 inputworker' D:/Swares/logstash-7.2.0/logstash-7.2.0/logstash-core/lib/logstash/java_pipeline.rb:302:in block in start_input' [2019-06-27T13:04 :06,946][ERROR][logstash.inputs.jdbc] 无法加载 postgresql-42.2.6.jar {:exception=>#}

我的配置是

  • Java 版本 - “1.8.0_211”
  • postgres (PostgreSQL) 11.0
  • logstash-7.2.0

这是我的logstash conf文件