之前介绍过如何使用文件系统通过Logstash将数据推送至elasticsearch来实现日志的线上分析。而这次介绍通过logstash 将MySql数据同步至elasticsearch
Logstash——配置介绍,数据输入配置(input)
Logstash——Logstash从MySQL中收集数据并输出添加
Logstash——Logstash从Redis中收集数据并输出
Logstash-MySql数据源配置
最开始先看下MySQL作为数据来源时支持的所有配置
input {
jdbc {
### 查询参数的哈希,例如 {
"target_id" => "321" }
parameters => {
}
### 准备好的语句的绑定值数组。:sql_last_value是保留的预定义字符串 []
prepared_statement_bind_values => []
### 是否强制使用标识符字段的小写
lowercase_column_names => true
### 链接池超时后连接秒数
jdbc_pool_timeout => 5
### JDBC密码文件名
jdbc_password_filepath =>
### JDBC密码
jdbc_password => "mysql"
### JDBC用户
jdbc_user => "mysql"
### JDBC页面大小
jdbc_page_size => 100000
### JDBC启用分页,请注意,不能保证查询之间的顺序
jdbc_paging_enabled => false
### 一次查询数据大小
jdbc_fetch_size => "TODO"
### 驱动类以及驱动程序库路径
jdbc_driver_library => "mysql-connector-java-5.1.36-bin.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
### 如果您希望此插件将时间戳偏移到UTC以外的时区,则可以将此设置设置为local,插件将使用OS时区进行偏移调整。
plugin_timezone
### 数据库连接地址
jdbc_connection_string => "TODO"
### 数据库时区 以UTC术语
jdbc_default_timezoneedit => "Asia/Shanghai"
### 尝试连接数据库的最大次数
connection_retry_attemptsedit => 1
### 两次重试后的时间,秒单位
connection_retry_attempts_wait_timeedit => 0.5
### 特定列的字节编码
columns_charset => {
"column0" => "ISO-8859-1" }
### 记录上次查询的最终位置sql_last_value元数据保存的文件的地址,
last_run_metadata_path => "/elastic/tmp/testing/confs/test-jdbc-int-sql_last_value.yml"
### 准备好的语句的绑定值数组
prepared_statement_bind_values => []
### 准备好的语句的名称
prepared_statement_name =>
### 是否保存状态
record_last_run => true
### 定期运行语句的时间表.如果没有给出时间表,则该语句仅运行一次
schedule =>
### 常规/特定于供应商的续集配置选项
sequel_