ELK -- 生产上线 (三)

一,ELK 如何上线

 上线前,需要做一些标准化的工作

1,对日志进行分类:

日志分类       获取来源    获取方式        什么插件  

系统日志      rsyslog        logstash         syslog 插件

访问日志      nginx           logstash         codec json

错误日志      file              logstash          file + mulitline

运行日志      file              logstash          codec json

设备日志      syslog        logstash          syslog 插件

debug日志   file              logstash          json or nulitline

2, 日志标准化处理,包含
1), 统一日志输出的路径
2),格式上,尽量采用json格式

3, 日志收集顺序
系统日志 -> 错误日志 -> 运行日志 -> 访问日志 ->应用的日志

 

二,ELK 部署架构

生产部署ELK尽量进行解耦,避免当中ES出现问题,或者需要维护时造成日志丢失。

解耦中,可以加入 redis 进行日志的存储,在从 redis 中读取,写入 ES 中。

 logstash  收集  ->  写入 redis  -> 读出数据  -> 写入 ES 中。

1,写入redis 的配置写法如下:

output {
redis {
hosts => "192.168.204.128"
port => "6379"
db => "es-redis"
data_type => "list"
key => "system-syslog"
}
}

 

2,从redis 读出的配置如下:

input {

   redis {

       type => "system-syslog"

       hosts => "192.168.204.128"

       port => "6379"

       db => "es-redis"

       data_type => "list"

       key => "system-syslog"

   }

 

 

 

 

 

 

posted @ 2020-04-30 21:17  流年浮生  阅读(123)  评论(0)    收藏  举报