logstash收集数据库数据

avatar
作者
筋斗云
阅读量:0

利用logstash收集mysql数据库表中的数据,logstash支持jdbc插件,可以用来采集数据库中的数据。

jdbc插件官方手册参考:https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html

logstash具体配置示例:

input{     jdbc{         jdbc_driver_library => "/data/jdbc/mysql-connector-java-5.1.49.jar"  # mysql驱动存放路径         jdbc_driver_class => "com.mysql.jdbc.Driver"         jdbc_connection_string => "jdbc:mysql://mysql-ip:3306/database-name" # jdbc连接地址         jdbc_user => "username"    # 数据库用户名         jdbc_password => "passwd"  # 数据库密码         use_column_value => true         tracking_column => "id"    # 每次查询基于哪个字段筛选,这个字段必须是自增的(比如这里是字段名是id)         schedule => "*/5 * * * *"  # 采集频率,每5分钟采集一次         statement => "select * from tabname where id > :sql_last_value"   # 查询语句(:sql_last_value是固定的语法)         record_last_run => true 		# 重点在这里,mysql语句中查询的时候必须包含作为偏移量的字段(这里指id字段),如果不包含的话就不更新偏移量文件,然后就会重复的从之前保留的那个偏移量读取数据         last_run_metadata_path => "/data/jdbc/logstash_offset.txt"  # 每次查询执行后,变量字段的值保存的位置,即sql_last_value的值         clean_run => false     } }  output{ 	stdout{} } 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!