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 下载然后解压
至于解压后的文件放哪儿,这里有两种方式
:
-
在 Logstash 目录下,创建目录:/vendor/jar/jdbc,将 mysql-connector-java-8.0.23.jar 文件放在里面,默认就能找到 mysql-connector-java-8.0.23.jar,不需要配置参数 driver_jar_path。
-
放在任意目录,但是要配置参数 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