zoukankan      html  css  js  c++  java
  • 第八章·Logstash深入-通过TCP/UDP收集日志

    1.收集TCP/UDP日志

    通过logstash的tcp/udp插件收集日志,通常用于在向elasticsearch日志补录丢失的部分日志,可以将丢失的日志通过一个TCP端口直接写入到elasticsearch服务器。


    配置Logstash
    #进入Logstash配置文件目录
    [root@elkstack03 ~]# cd /etc/logstash/conf.d/
    #编辑Logstash配置文件
    [root@elkstack03 conf.d]# vim tcp.conf
    input {
      tcp {
        port => 1234
        type => "tcplog"
        mode => "server"
      }
    }
    
    output {
      stdout {
        codec => rubydebug
      }
    }
    #启动Logstash
    [root@elkstack03 conf.d]# /usr/share/logstash/bin/logstash -f  /etc/logstash/conf.d/tcp.conf
    #检测端口是否启动成功
    [root@elkstack03 ~]# netstat -lntup
    tcp        0      0 :::1234                     :::*                        LISTEN      8656/java
    


    使用nc传输日志

    NetCat简称nc,在网络工具中有瑞士军刀美誉,其功能实用,是一个简单、可靠的网络工具,可通过TCP或UDP协议传输读写数据,另外还具有很多其他功能。

    在其它服务器安装nc命令

    #使用yum安装nc
    [root@db04 ~]# yum install -y nc
    #使用nc传输数据
    [root@elkstack04 ~]# echo "zls test nc" | nc 10.0.0.53 1234
    

    通过nc发送一个文件

    #将/etc/passwd文件当成日志文件传送
    [root@elkstack04 ~]# nc 10.0.0.53 1234 < /etc/passwd
    

    结果如下,我们不难发现,Logstash会将传送来的日志文件 一行一行 读取,收集成日志


    通过伪设备的方式发送日志

    在类Unix操作系统中,设备节点并不一定要对应物理设备。没有这种对应关系的设备是伪设备。操作系统运用了它们提供的多种功能,tcp只是dev下面众多伪设备当中的一种设备。

    #发送伪设备数据
    [root@elkstack04 ~]# echo "曾老湿 伪设备 测试"  > /dev/tcp/10.0.0.53/1234
    


    将输出改成ES
    #编辑logstash配置文件
    [root@elkstack03 conf.d]# vim tcp.conf
    input {
      tcp {
        port => 1234
        type => "tcplog"
        mode => "server"
      }
    }
    output {
      elasticsearch {
        hosts => ["10.0.0.51:9200"]
        index =>  "tcp_log-%{+YYYY.MM.dd}"
      }
    }
    #启动Logstash
    [root@elkstack03 conf.d]# /usr/share/logstash/bin/logstash -f  /etc/logstash/conf.d/tcp.conf &
    
    #测试数据
    [root@elkstack04 ~]# echo "曾老湿 伪设备 测试1"  > /dev/tcp/10.0.0.53/1234
    [root@elkstack04 ~]# echo "曾老湿 伪设备 测试2"  > /dev/tcp/10.0.0.53/1234
    

    打开浏览器,访问:http://10.0.0.51:9100/


    将ES索引添加到Kibana中

    查看日志结果

  • 相关阅读:
    转:npm安装教程
    转:数据库收缩
    转:日志插件 log4net 的使用
    转:更改SQLServer实例默认字符集
    转:IIS 应用程序池 内存 自动回收
    IDisposable
    Sql Server 判断字符串是否可以转数字
    常用算法之快速排序
    Java调用JavaScript
    使用python生成iOS各规格icon
  • 原文地址:https://www.cnblogs.com/Forever-x/p/11325032.html
Copyright © 2011-2022 走看看