Logstash下载安装使用并日志写入Mysql数据库

官网地址 https://www.elastic.co/cn/logstash

下载地址 https://www.elastic.co/cn/downloads/logstash

下载安装包后并解压 logstash-7.11.1-linux-x86_64.tar.gz

tar xzvf logstash-7.11.1-linux-x86_64.tar.gz

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

bin/logstash-plugin install logstash-output-jdbc

因为外国网站如果失败多试几次

JDBC 插件依赖 mysql-connector-java-8.0.23包 去官网下载

mysql-connector-java-8.0.23.zip  下载然后解压

至于解压后的文件放哪儿,这里有两种方式

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

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

简单配置和运行

创建一个logstash-simple.conf 配置文件

input { stdin { } }
output {
stdout { codec => rubydebug }
}

运行

bin/logstash -f logstash-simple.conf

读取日志解析到mysql配置和运行

创建一个logstash-simple.conf 配置文件

input {
        file{
                path => "/mnt/tjzd-logs/test.*"
                start_position => "beginning"
                sincedb_path => "/home/aaru/test/logstash/tjzd_log/test_since_db"
        type => "test"
        }

}

  filter {
  if [type] == "test" {
        dissect {
          mapping => {
        "message" => "%{name}|%{age}|%{sex}"
          }
      }
    }

  }

output{
        stdout{
        codec=>rubydebug{}  
        }

  if [type] == "test" {
      jdbc {
        driver_class => "com.mysql.jdbc.Driver"
        connection_string => "jdbc:mysql://127.0.0.1:3306/tjzd_log?user=test&password=test"
        statement => [ "INSERT INTO tjzd_log.test(name, age, sex) VALUES (?, ?, ?)", "name", "age", "sex" ]
      }
    }

}

运行

bin/logstash -f logstash-simple.conf

 

posted @ 2021-03-10 12:35  独逸  阅读(390)  评论(0编辑  收藏  举报