zoukankan      html  css  js  c++  java
  • ELK Nxlog->Kafka->ElasticSearch

    Windows 系统下,log4日志通过kafka发送到elasticsearch; windows 下nxlog没有找到直接发送数据到kafka的插件,所以采用logstash中转下

       

    Nxlog-->logstash(tcp)-->kafka(producer)-->logstash(consumer)-->elasticsearch

       

       

    nxlog配置

       

    <Input kafkalog4>

    Module im_file

    File "E:\log\webapi\kafka.txt"

    SavePos TRUE                

    </Input>

       

    <Output kafkalog4out>

    Module om_tcp

    Host 127.0.0.1

    Port 6666

    </Output>

       

    <Route jsonruby>

    Path kafkalog4 => kafkalog4out

    </Route>

       

    Logstash配置

    input {

    tcp {

    port=>6666

    codec => multiline {

    charset =>"locale"

    pattern => "^d{4}-d{2}-d{2} d{2}:d{2}:d{2}\,d{3}"

    negate => true

    what => "previous"

    }

    type=>"kafkain"

    }

       

    kafka {

    zk_connect => "127.0.0.1:2181"

    topic_id => "test"

    codec => plain

    reset_beginning => false

    consumer_threads => 5

    decorate_events => true

    }

       

    }

       

    output {

     

    if [type=="kafkain"]

    {

    kafka {

    bootstrap_servers => "localhost:9092"

    topic_id => "test"

    codec => plain {

    format => "%{message}"

    }

    }

    }

    else{

    elasticsearch {

    hosts => ["localhost:9200"]

    index => "test-kafka-%{+YYYY-MM}"

    }

    }

    }

       

       

    Logstash 文件在使用前用

    logstash -f logstash.conf --configtest --verbose

    检测下是否正确

       

    显示OK的话起动logstash如下命令

    Logstash agent -f logstash.conf

       

    kibana显示日志如下

       

       

       

  • 相关阅读:
    Java实现 LeetCode 461 汉明距离
    在Linux运行期间升级Linux系统(Uboot+kernel+Rootfs)
    AM335x(TQ335x)学习笔记——挂载Ramdisk
    Ramdisk文件系统的制作与调试运行
    u-boot向linux内核传递启动参数(详细)
    uboot环境变量与内核MTD分区关系
    MMU
    INTERRUPT CONTROLLER
    UART
    GPIO
  • 原文地址:https://www.cnblogs.com/liuyuhua/p/5333114.html
Copyright © 2011-2022 走看看