Logstash 7.9.1 写数据到MySQL

个人学习笔记,谢绝转载!!!

原文:https://www.cnblogs.com/wshenjin/p/13714983.html


MySQL表结构

(root@localhost) [testdb]> show create table logstashG
*************************** 1. row ***************************
       Table: logstash
Create Table: CREATE TABLE `logstash` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `address` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8

MySQL官方JDBC驱动程序

[root@ ]# wget https://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.49.zip
[root@ ]# unzip mysql-connector-java-5.1.49.zip
[root@ ]# cp mysql-connector-java-5.1.49/mysql-connector-java-5.1.49-bin.jar  /etc/logstash/jdbc/

安装jdbc插件

[root@ ]# bin/logstash-plugin install logstash-output-jdbc 

logstash配置

input {
  stdin{}
}
 
filter{
    grok {
        match => {
            "message" => "%{WORD:name} %{NUMBER:age} %{WORD:address}"
        }
   }
}
 
output {
  jdbc {
      driver_jar_path => "/etc/logstash/jdbc/mysql-connector-java-5.1.49-bin.jar"
      driver_class => "com.mysql.jdbc.Driver"
      connection_string => "jdbc:mysql://127.0.0.1:3306/testdb?user=root&password=20c0dc7315fe8db65cbab532818e0e7a"
      statement => [ "INSERT INTO logstash (name, age, address) VALUES(?, ?, ?)", "name", "age", "address" ]
  }
}
原文地址:https://www.cnblogs.com/wshenjin/p/13714983.html