问题标签 [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.
elasticsearch - mysql集群的logstash jdbc上的多个输入
例如,我有 8 个分贝,例如db0
, db1
, db2
, ... , db7
. 在每个数据库中,我有近 1024 个表共享相同的结构,表的名称是table0001
, table0002
, table0003
,..., table1024
。据我所知,对于每个 db 和 table,都必须有一个jdbc
与之对应的配置。例如,
有很多冗余配置,例如jdbc_driver_library
,jdbc_driver_class
等等。
有没有像通配符这样的机制来避免冗余配置?特别是在拆分表情况下使用时。
mysql - 预处理后使用logstash将数据从MySQL导入elasticsearch
我正在尝试使用logstash将数据从MySQL导入elasticsearch,一切正常,并且我已经很好地导入了所有数据。但是,MySQL 中称为“元数据”的字段之一遵循特定模式,例如“firstname_lastname_yyyy-MM-dd HH:mm:ss”,因此例如这是它可能采用的值之一“Mark_Karlos_2018-02-23 15 :19:55”,目前该字段按原样导入到 Elasticsearch 中,我想要做的是将该字段作为 Elasticsearch 中的三个字段“first_name”、“last_name”、“time”。这可以用 Logstash 配置文件来完成吗?如果没有,还有其他方法可以做到这一点吗?
logstash - 使用来自 JDBC 输入的日期时间替换 @timestamp
有人如何替换@timestamp
Logstash 管道中的字段而不将 DateTime 转换为字符串,然后对该列进行日期过滤?
elasticsearch - 如何使用 Logstash 中的 JDBC 输入插件将经纬度值映射到 geo_point 转换数据库以在 Kibana 中使用?
我正在使用 logstash 中的 jdbc 输入插件将 Mariadb 数据库记录到弹性搜索中。目标是使用 Kibana 制作一些地理报告。
数据被编入索引,但我不能使用索引的经度和纬度来使报告显示索引中没有“geo_point”类型。
我尝试配置 jdbc 插件以了解地理值,但似乎不是它的工作,但我应该在弹性搜索中更改索引的字段映射。
创建后可以更改索引的映射吗?如何?
logstash - logstash 错误:注册插件时出错,管道因错误而中止()
我是 ELK 的初学者,并试图将数据从 MySQL 加载到 elasticsearch(下一步我想通过 javarestclient 查询它们),所以我使用了 logstash-6.2.4 和 elasticsearch-6.2.4。并在这里举了一个例子。当我运行: 时bin/logstash -f /path/to/my.conf
,我得到了错误:
这是 testdbinit.conf(utf-8 编码):
这是表(database:testdb--->table:testtable):
我尝试用谷歌搜索这个问题,但仍然没有任何线索;我认为可能是某些类型转换错误(TypeError: can't dup Fixnum )导致了这个问题,但是这个“dup Fixnum”到底是什么,如何解决?
还有一件事让我感到困惑:我昨天运行了相同的代码,并成功将数据加载到了 elasticsearch 中,我也可以通过 localhost:9200 搜索它们,但是第二天早上当我尝试同样的事情(在同一个 cpmputer 上)时,我遇到了这些问题。我已经折腾了一整天,请帮助我获得一些提示。
datetime - 在 ElasticSearch 中以微秒格式保存日期
我正在尝试使用带有 Logstash 的 jdbc 输入插件将 MySQL 数据库中的一组事件保存到弹性搜索中。数据库中的事件记录包含微秒格式的日期字段。实际上,在微秒组之间的数据库中有记录。
在导入数据时,Elasticsearch 会将微秒日期格式截断为毫秒格式。如何以微秒格式保存数据?elasticsearch 文档说他们遵循 JODA 时间 API 来存储日期格式,该格式不支持微秒并通过在时间戳末尾添加Z来截断。
截断后的示例时间戳:2018-05-02T08:13:29.268Z
数据库中的原始时间戳:2018-05-02T08:13:29.268482
elasticsearch - 如果类型条件不起作用,则 Logstash
在我的 Logstash 中,我有一个运行 2 个 SQL 查询来下载数据的管道。下面是管道的conf文件:
我可以在控制台中看到一切正常,除了索引类型transactions
永远不会保存到 Elasticsearch。这个条件if [type] == "transactions" {
永远不会成立,第二个条件没有任何问题。我尝试在transactions
没有 if 条件的情况下仅使用索引运行管道,并且效果很好。出于某种原因,如果条件不起作用,但为什么?
我找到了一个荒谬的解决方法,但如果我遇到另一个索引存在此问题,它将无法正常工作:
logstash - jdbc_streaming 过滤器插件性能
最近我使用了 Logstash 的 Jdbc_streaming 过滤器插件,这是一个非常有用的插件,它允许我即时连接我的数据库并对我的事件进行检查。但是使用此过滤器是否有任何缺点或陷阱。我的意思是我有以下疑问:
例如,我正在select
针对我的每个事件发起查询。
- 为每个事件查询我的数据库是否是个好主意。我的意思是,如果我正在处理不断向我发送数据的服务器的 syslog 事件,在这种情况下,对于每个事件,我将在我的数据库上触发一个选择查询,那么我的数据库将如何在负载和响应时间方面做出反应.
- 连接的数量如何,它们是如何管理的。
- 如果我加入多个表,这将如何表现。
我希望我能够传达我的问题。我只是想了解,它到底是如何在后端工作的,并且以极快的速度查询我的数据库会降低我的数据库性能。
logstash - logstash:将逗号分隔的字符串从 MySQL 导入弹性搜索作为数组
我正在尝试将逗号分隔的字符串 ( GROUP_CONCAT
) 作为数组数据类型插入到 elasticsearch 中。作为输入,我使用 JDBC,SQL 查询的输出如下:
我使用split
了 mutate 插件:
虽然,字段被插入为逗号分隔的字符串:
回应:
我的最终目标是插入vrt
为数组字段并使用 kibana 来创建可视化。例如,我想在 kibana 上创建一个计数器并计算有多少文档在vrt
字段上具有“Fitness”。
麋鹿版本:6.2.4
elasticsearch - Elastic 仅保留来自 logstash 的最后一条记录
这是select语句,它是一个事务数据,每次将数据插入UserProfile时,旧的索引值都会从弹性中删除
如果有任何更改,我想更新现有文档,否则索引新文档。
我在这里做错了什么?