ELK,萌萌哒

logstash实际生产中是如何使用。

Logstash | 作者 lxwan08 | 发布于2018年06月25日 | 阅读数:2848

logstash的基本用法我也相应的了解了,但是
1.分布式系统的项目会分布会分布在不同的服务器中,生产的日志文件也分布在不同的服务器当中,我需要去汇总到一起,是不是在每一台项目的服务器中安装logstash后统一输入到es中,防止同一时间日志量过大,可以先暂存在redis或者kafka服务中然后在通过logstash的服务存在ES当中?
2.还有一个问题就是logstash为什么要用filebeat替代。
3.logstash是不是实时的,还是会监听日志文件,还是日志文件一发生修改就会进行管道处理
 
已邀请:

lxwan08

赞同来自:

第三个我找到了答案。可以相关配置
input {
file {
#监听文件的路径
path => ["E:/software/logstash-1.5.4/logstash-1.5.4/data/*","F:/test.txt"]
#排除不想监听的文件
exclude => "1.log"

#添加自定义的字段
add_field => {"test"=>"test"}
#增加标签
tags => "tag1"

#设置新事件的标志
delimiter => "\n"

#设置多长时间扫描目录,发现新文件
discover_interval => 15
#设置多长时间检测文件是否修改
stat_interval => 1

#监听文件的起始位置,默认是end
start_position => beginning

#监听文件读取信息记录的位置
sincedb_path => "E:/software/logstash-1.5.4/logstash-1.5.4/test.txt"
#设置多长时间会写入读取的位置信息
sincedb_write_interval => 15

}
}
filter {

}
output {
stdout {}
}

luohuanfeng

赞同来自:

2, filebeat相当于轻量级的logstash ,资源占用比logstash少,只做收集的话,肯定要选filebeat,logstash的filter功能比较强大.
1, 刚刚说了 filebeat资源占用会比logstash少,那服务器上只安装filebeat 收集日志到 kafka or redis 中 ,就可以了. 然后 在一台(或多台)服务器上运行logstash 做filter.  logstash用几台看你实际情况来定.

要回复问题请先登录注册