[logstash] 利用JDBC存取 mysql

No Comments

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
}

Leave a Reply

Share via
Copy link