看似简单小问题系列之ELK

    xiaoxiao2023-11-04  165

    之前本人一篇 ElasticSearch 6 安装及相关坑解析 讲过ES安装 那么 今天讲一下剩下的LK 希望能和Spring的整合

    logstash基本解压就能用,conf里面配置下elasticsearch地址,用如下命令启动:

    nohup bin/logstash -f config/logstash.conf &

    logstash.conf 怎么配置呢,这里要说明下:

    如果要配置jdbc 那么需要执行 ./logstash-plugin install logstash-input-jdbc

    出现Installation successful表明安装成功!

    然后 如下配置 :

    input { stdin { } jdbc { type => "es_type" jdbc_driver_library => "/home/service/module/mysql-connector-java-8.0.16.jar" jdbc_driver_class => "com.mysql.cj.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://0.0.0.0:3306/xxxx?useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&serverTimezone=UTC" jdbc_user => "****" jdbc_password => "****" tracking_column => "id" use_column_value => "true" record_last_run => "true" last_run_metadata_path => "sku_meta" clean_run => "false" statement => "SELECT * from sku where id > :sql_last_value" jdbc_paging_enabled => "true" jdbc_page_size => "50000" schedule => "* * * * *" } } output { if [type]=="es_type" { elasticsearch { hosts => ["http://0.0.0.0:9200"] index => "sku" document_type => "es_type" document_id => "%{id}" #type => "es_type" #index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}" #user => "elastic" #password => "changeme" } } }

    重要参数设置:

    //是否记录上次执行结果, 如果为真,将会把上次执行到的 tracking_column 字段的值记录下来,保存到 last_run_metadata_path 指定的文件中 record_last_run => true //是否需要记录某个column 的值,如果 record_last_run 为真,可以自定义我们需要 track 的 column 名称,此时该参数就要为 true. 否则默认 track 的是 timestamp 的值. use_column_value => true //如果 use_column_value 为真,需配置此参数. track 的数据库 column 名,该 column 必须是递增的.比如:ID. tracking_column => MY_ID //指定文件,来记录上次执行到的 tracking_column 字段的值 //比如上次数据库有 10000 条记录,查询完后该文件中就会有数字 10000 这样的记录,下次执行 SQL 查询可以从 10001 条处开始. //我们只需要在 SQL 语句中 WHERE MY_ID > :last_sql_value 即可. 其中 :last_sql_value 取得就是该文件中的值(10000). last_run_metadata_path => "/etc/logstash/run_metadata.d/my_info" //是否清除 last_run_metadata_path 的记录,如果为真那么每次都相当于从头开始查询所有的数据库记录 clean_run => false //是否将 column 名称转小写 lowercase_column_names => false //存放需要执行的 SQL 语句的文件位置 statement_filepath => "/etc/logstash/statement_file.d/my_info.sql"

     

    然后kibana也是基本解压就能用,同样在config里面配置elasticsearch地址,启动如下:

    nohup bin/kibana &

    关闭kibana 麻烦一点 ps -ef | grep node 找到进程,强杀!

    and 。。。然后从入门到放弃,好像elk里面 就 elasticsearch非常有用,logstash略微有用,等笔者有心情了再看看K是否有卵用。

    最新回复(0)