【问题标题】:Data transformation in logstashlogstash 中的数据转换
【发布时间】:2019-05-28 21:17:07
【问题描述】:

我有一个数据源,一个只读 SQL 服务器,通过组合来自该服务器的表,我正在制作一个日志,我需要将它上传到 Elastic Search。

为此,我对数据源进行了 API 调用,然后在 Logstash 中进行数据转换,然后将其上传到 ES。

我之前在 SQL 中做过几次数据转换。在 SQL 中,我会 JOIN 几个表并将查询结果 INSERT 到日志表中,但是在此设置中我没有 SQL 选项,我需要在日志存储。

我要的是关于 logstash 的最佳实践建议。

【问题讨论】:

  • 我不确定这是最佳实践,但一种选择是使用 SQL 和脚本将结果附加到文件中,然后使用 logstash/beats 读取此文件。
  • 这是我的第一个想法,但我还没有找到在logstash 中运行SQL 脚本的方法。我从 API 获取数据,所以我在 SQL 服务器之外

标签: sql elasticsearch logstash


【解决方案1】:
input {
  jdbc {
    jdbc_driver_library => "mysql-connector-java-5.1.38-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://localhost/student?user=root&password="
    jdbc_user => "Croos"
    parameters => {
    }

    schedule => "* * * * *"
    statement => "SELECT * from subject WHERE id > :sql_last_value"
    use_column_value => true
    tracking_column => id
  }
}

output {
  elasticsearch {
    hosts => ["localhost:9200"]
  }
}

这个link可能对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-12
    • 1970-01-01
    • 2019-06-23
    • 1970-01-01
    • 1970-01-01
    • 2022-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多