1、环境
windows10,elastic search 6.0.0,logstash 6.0.0,MySQL 5.7.26,mysql-connector-java-8.0.19
建议从中文社区 https://elasticsearch.cn/download/ 使用迅雷下载elastic search 和 logstash,速度会比较快。
2、logstash 配置
1) 将mysql-connect-java驱动放在logstash目录下
2) 创建...\logstash-6.0.0\config\logstash-mysql.conf文件用来配置数据库信息:
input {
jdbc {
jdbc_driver_library => "D:\ELK\logstash-6.0.0\mysql-connector-java-8.0.19.jar"
jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://localhost:3306/es_blog?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC"
jdbc_user => "root"
jdbc_password => "1234567890"
#是否记录上一次的值
record_last_run => true
#使用指定的追踪字段追踪,不设置的话会使用时间追踪
use_column_value => true
#追踪的字段
tracking_column => id
#存放上一个sql_last_value的值,需要在文件中初始化指定字段值
last_run_metadata_path => "D:\ELK\logstash-6.0.0\config\station_parameter.txt"
clean_run => false
statement => "SELECT id, title, author, content FROM t_article where id > :sql_last_value"
#开启分页查询
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
#调度时间"分 时 天 月 年",默认为一分钟
schedule => "* * * * *"
#设置时区
jdbc_default_timezone =>"Asia/Shanghai"
}
}
filter {
json {
source => "message"
remove_field => ["message"]
}
}
output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => "127.0.0.1:9200"
index => "logstash-blog"
document_id => "%{id}"
document_type => "article"
}
} 3、启动
.\logstash -f ..\config\logstash-mysql.conf
观察到追踪的id值发生了变化(初始为0)

京公网安备 11010502036488号