ELK菜鸟手记 (二) - 高级配置之多应用索引过滤

我们在实际的场景中,经常是多个网站或者服务端在一台服务器上,但是如果这些应用全部

记录到一台logstash服务器,大家日志都混在一起不好区分。

有人说,我可以在日志中打项目名,但是这样并不方便。

其实,我们可以在索引上做文章。

配置如下:

input {
    file {  
        path => ["/Users/KG/Documents/logs/app-a/*.log"]  
        type => "app-a"
    }  
    file {  
        path => ["/Users/KG/Documents/logs/app-b/*.log"] 
        type => "app-b"
    }  
}

output {
    stdout {
      codec => rubydebug
    }
    if [type] == "app-a" {  
       elasticsearch { 
            hosts => "你的elastic服务器地址:9200"  
            index =>  "app-a-%{+YYYY.MM.dd}"
            document_type => "log4j_type"
        }  
    }  
    else if [type] == "app-b" {  
        elasticsearch { 
            hosts => "你的elastic服务器地址:9200"  
            index => "app-b-%{+YYYY.MM.dd}"
            document_type => "log4j_type"
        }  
    }  
}

从上面的代码可以看出,我们配置了2个索引app-a表示应用A, 而app-b表示应用B。

我们利用了type和path属性,然后对不同路径的日志进行监控,将输入定向到不同的索引。

 

上一篇:王宁桥:产业金融加速进入3.0模式 | 阿里CIO学院名人堂


下一篇:凯伦陈洪进:中国防水行业亟待拥抱数字化变革 | 阿里CIO学院名人堂