登录
首页 >  数据库 >  MySQL

Logstash将数据导入至MYSQL

来源:SegmentFault

时间:2023-01-23 19:30:26 113浏览 收藏

在数据库实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《Logstash将数据导入至MYSQL》,聊聊MySQL、db、logstash,希望可以帮助到正在努力赚钱的你。

Logstash
版本:
6.2.4

Logstash
经常做的事情,是将日志文件进行解析,并且导入至
ElasticSearch

但是目前碰到的问题是,怎么将数据导入至

DB
中,比如
MYSQL

这就需要下面这个

神器
了!

JDBC output for Logstash

下载地址:https://github.com/theangryan...

首先,安装

Logstash 6.2.4
,并确保
JDK
的版本是
1.8

然后进入

Logstash
目录,安装插件
logstash-output-jdbc
,执行以下命令:

bin/logstash-plugin install logstash-output-jdbc

JDBC
插件依赖
mysql-connector-java-5.1.46
包,So,我们去官网下载吧

提供了两种格式的包文件

1、mysql-connector-java-5.1.46.tar.gz
2、mysql-connector-java-5.1.46.zip

这里随便下一个,然后解压。

至于解压后的文件放哪儿,这里有

两种方式

1、在 Logstash 目录下,创建目录:/vendor/jar/jdbc,将 mysql-connector-java-5.1.46-bin.jar 文件放在里面,默认就能找到 mysql-connector-java-5.1.46-bin.jar,不需要配置参数 driver_jar_path。

2、放在任意目录,但是要配置参数 driver_jar_path ,确保能找到 mysql-connector-java-5.1.46-bin.jar 文件

OK,我们来测试一下

首先,创建配置文件:

Logstash.conf

input {
  stdin{}
}

filter{
    json{
        source => "message"
    }
}

output {
  stdout{
        codec=>rubydebug{}
  }
  jdbc {
    driver_jar_path => "/xxxxxxx/mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar"
    driver_class => "com.mysql.jdbc.Driver"
    connection_string => "jdbc:mysql://数据库IP:数据库端口/数据库名称?user=数据库的用户名&password=数据库的密码"
    statement => [ "INSERT INTO test (name, age) VALUES(?, ?)", "test_name", "test_age" ]
  }
}

注意

JDBC
模块中还可以配置一些其他参数,如:
connection_timeout
,可以参考
Github
上的文档。

然后,我们来运行一下

logstash

./bin/logstash -f logstash.conf

由于

input
输入是标准输入,我这里在命令行里输入:

{"test_name":"feblilac","test_age":"18"}

Logstash
输出:

{
    "@timestamp" => 2018-05-14T08:14:44.069Z,
      "user_age" => "18",
          "host" => "dev01v.mg.corp.qihoo.net",
      "@version" => "1",
       "message" => "{\"test_name\":\"feblilac\",\"test_age\":\"18\"}",
     "user_name" => "feblilac"
}

让我们看看数据库吧

clipboard.png

瞧,数据进来了!

后记:至于其他

DB
,这里没有进行测试,大家可以参考
logstash-output-jdbc/examples/
目录下的例子

好了,本文到此结束,带大家了解了《Logstash将数据导入至MYSQL》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多数据库知识!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表