logstash 使用总结

1.下载与安装

1.1 下载

1、链接: logstash 下载地址.
2、mysql5.7的驱动

1.2 安装

创建目录

mkdir -p /home/logstash

上传文件logstash和mysql驱动至此目录

tar –zxvf /hsa/logstash-7.6.1.tar.gz

2.配置

2.1 配置文件总入口

 vim /home/logstash/logstash-7.6.1/config/pipelines.yml

输入以下内容

- pipeline.id: index_first
 path.config: "/home/logstash/conf/index_first/index_first.conf"
#- pipeline.id: index_two
#  path.config: "/home/logstash/conf/index_two/index_two.conf" 

2.2 配置文件

mkdir -p /home/logstash/conf/index_first
vim /home/logstash/conf/index_first/index_first.conf

输入以下内容:

input {
    jdbc {
    #mysql 数据库链接,dianpingdb为数据库名
      jdbc_connection_string => "jdbc:mysql://ip:port/db?useSSL=false"
    #用户名和密码
      jdbc_user => "username"
      jdbc_password => "password"
    #驱动
      jdbc_driver_library => "/home/logstash/jdbc/mysql-connector-java-5.1.48.jar"
    #驱动类名
      jdbc_driver_class => "com.mysql.jdbc.Driver"
      jdbc_paging_enabled => "true"
      jdbc_page_size => "50000"
    #执行的sql 文件路径+名称
      statement_filepath => "/home/logstash/conf/index_first/index_first.sql"
    #设置监听间隔  各字段含义(由左至右)分、时、天、月、年,全部为*默认含义为每分钟都更新
      schedule => "* * * * *"
        #是否转小写
          lowercase_column_names => false
        #时区设置
          jdbc_default_timezone => "Asia/Shanghai"
        #自动更新的字段 
          tracking_column => "UPDT_TIME"
          #tracking_column_type => "timestamp"
        #时间设置
          last_run_metadata_path => "/home/logstash/conf/index_first/sql_last_value.txt"
          #last_run_metadata_path => "sql_last_value.txt"
          #默认生成的路径
          #  win    C:\${用户名}\CHUAN\.logstash_jdbc_last_run
          #  linux  C:\${用户名}\CHUAN\.logstash_jdbc_last_run
        #是否清除 last_run_metadata_path 的记录,true那么每次都相当于从头开始查询所有的数据库记录   
          #clean_run => false
        #默认保存最后运行时间  
          #record_last_run => false
        #是否清除 last_run_metadata_path 的记录,true那么每次都相当于从头开始查询所有的数据库记录   
          clean_run => false
    }
}

output {
    elasticsearch {
    #ES的IP地址及端口
        hosts => ["ip:port"]
    #索引名称
        index => "index_first"
    #需要关联的数据库中有一个id字段,对应索引的id号
        document_id => "%{psnNo}"
    }
    stdout {
    #JSON格式输出
        codec => json_lines
    }
}

2.3 配置查询语句

vim /home/logstash/conf/index_first/index_first.sql

输入以下内容:

SELECT
        psn_no AS psnNo,
        psn_name AS psnName,
        cert_no AS certNo,
        DATE_FORMAT(UPDT_TIME, '%Y-%m-%d %T') as updtTime
FROM
        psn_info
        where UPDT_TIME > :sql_last_value
        ORDER BY UPDT_TIME ASC

3.启动

前台启动

/home/logstash/logstash-7.6.1/bin/logstash

后台启动

nohup /home/logstash/logstash-7.6.1/bin/logstash &
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值