logstash的安装使用,版本6.2.4

1.安装logstash
下载:https://artifacts.elastic.co/downloads/logstash/logstash-6.2.4.zip
2.修改logstash 文件夹下Gemfile文件

将source改为:https://gems.ruby-china.org

3.cmd进入bin目录
执行logstash-plugin install logstash-input-jdbc

出现如下信息
Validating logstash-input-jdbc
Installing logstash-input-jdbc
Installation successful
表示安装成功

4.在bin中放入mysql-connector-java-5.1.31.jar包
5.bin文件夹新建logstash.conf文件 加入配置

input {
  jdbc {
    # mysql相关jdbc配置
    jdbc_connection_string => "jdbc:mysql://127.0.0.1:3306/vtest?useUnicode=true&characterEncoding=utf-8&useSSL=false"
    jdbc_user => "root"
    jdbc_password => "123456"
    # jdbc连接mysql驱动的文件目录,可去官网下载:https://dev.mysql.com/downloads/connector/j/
    jdbc_driver_library => "mysql-connector-java-5.1.31.jar"
    # the name of the driver class for mysql
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_paging_enabled => true
    jdbc_page_size => "50000"
    jdbc_default_timezone =>"Asia/Shanghai"
    # mysql文件, 也可以直接写SQL语句在此处,如下:
    statement => "select * from t_owner"
    # statement_filepath => "jdbc.sql"
    # 这里类似crontab,可以定制定时操作,比如每分钟执行一次同步(分 时 天 月 年)
    schedule => "* * * * *"
    #type => "jdbc"
  }
}

output {
  elasticsearch {
    hosts => "127.0.0.1:9200"
    #索引名
    index => "owner"
    #数据库对应的主键,而且还全部是小写字母 否则只能导入一条数据,执行的是更新操作
    document_id => "%{ownerid}"
    template_overwrite => true
  }

  # 这里输出调试,正式运行时可以注释掉
  stdout {
      codec => json_lines
  } 
}

7.配置好后 cmd进入bin目录,执行如下命令
logstash.bat -f logstash.conf

如果看到小黑屏有sql输出,你就成功啦,数据是实时同步的你可以去head查一下有没有数据
参考:https://blog.csdn.net/a863922230/article/details/80293931
参考这个链接的没有成功,然后我把sql放到input 里就可以了

你可能感兴趣的:(#,elk)