使用logstash将项目的日志存储到Elasticsearch中(详细!新手避坑点!)

1.环境准备

我这里默认你们这个logstash和Elasticsearch已经安装好了。

我使用的是logstash版本7.4.0 Elasticsearch版本7.4.0。 使用其他版本注意版本一定要一致,版本不一致大概率会出现logstash启动报Failed to install template.异常,已经踩坑了。

logstash的配置文件:

input {
#tcp网络传输模式
    tcp {
       mode => "server" 
       #监听端口号
       port => 9601
       codec => json_lines
    }
}
#输出位置
output {
    elasticsearch {
        action => "index"
        #es的地址
        hosts => ["10.10.80.56:9200"]
        #es的索引名称
        index => "logtoes-test"
        #es的用户名与密码
        user => "username"
        password => "password"
     }
    stdout {
        codec => rubydebug
    }
}

接下来

以配置文件启动

在 logstash-7.4.0下的bin目录使用

./logstash -f /home/zhjk/logstash-test-config/logstash-test.conf

-f 后面是配置文件路径

启动成功窗口

使用logstash将项目的日志存储到Elasticsearch中(详细!新手避坑点!)_第1张图片

查看9601端口是否被监听

[zhjk@tongtech-56 ~]$ netstat -lntp |grep 9601
tcp6       0      0 :::9601                 :::*                    LISTEN      8897/java  

2.配置lockback

maven坐标

尽量和我的一致,之前用的4.8 的版本,不报错但是日志进不去。


        
            net.logstash.logback
            logstash-logback-encoder
            6.3
        

​logback.xml

  
    
    
    springcloud
​
​
    
        
            
                %date %level [%thread] %logger{36} [%file : %line] %msg%n
            
        
    
        
            ${logging.path}.%d{yyyy-MM-dd}.zip
        
        
        
            ERROR
            
            DENY
            
            ACCEPT
        
        
            
                %date %level [%thread] %logger{36} [%file : %line] %msg%n
            
        
        
        
            
            
                
                D:\tomcat\info.%d.log
            
        
    
        
            ${logging.path}.%d{yyyy-MM-dd}.zip
        
        
        
            
                ERROR
            
        
        
            
                %date %level [%thread] %logger{36} [%file : %line] %msg%n
            
        
        
        
            
            
                
                D:\tomcat\error.%d.log
            
        
    
​
​
​
    
        
        ${logstash.host}
        ${logstash.port}

        1048576
         
            INFO
            
            ACCEPT
            
            DENY
        
            
                
                    UTC
                
                
                    
                        {
                        "severity":"%level",
                        "service": "%contextName",
                        "pid": "${PID:-}",
                        "thread": "%thread",
                        "class": "%logger{40}",
                        "rest": "%message->%ex{full}"
                        }
                    
                
            
        
    
    
        
        
        
        
        
    

3.启动项目

    • 查看结果

使用logstash将项目的日志存储到Elasticsearch中(详细!新手避坑点!)_第2张图片

linux中logstash中打印如下信息,即为成功。

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