[logstash] 利用JDBC存取 mysql
9 月 15
REF: https://www.zghhome.cn/?p=350
Access data from mySQL and output to ES
test1
test2
test3
test4
test5
test6
test7
############# input ############## input { jdbc { jdbc_driver_library => "/usr/share/java/mysql-connector-java.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://192.168.7.79:3306/note" jdbc_user => "dbuser" jdbc_password => "password" #parameters => {""} schedule => "* * * * *" statement => "select ID,post_date,post_title,ping_status from note_posts where id > :sql_last_value order by id" #statement => "select ID,post_date,post_title,ping_status from note_posts" # setting for last run clean_run => false record_last_run => true use_column_value => true tracking_column => id last_run_metadata_path => "/usr/share/logstash/logstash_mydb-note_last_run" type => "mydb-note" } } ################################### ############# filter ############## ################################### ############# output ############## output { # stdout { codec => "rubydebug" } if [type] == "mydb-note" { if !("_grokparsefailure" in [tags]) { elasticsearch { hosts => [ "127.0.0.1:9200" ] index => [ "logstash-mydb-note" ] } } else { elasticsearch { hosts => [ "127.0.0.1:9200" ] index => [ "logstash-failure-mydb-note" ] } # ELK } # else } # if }