zl程序教程

您现在的位置是:首页 >  工具

当前栏目

ELK详解(十一)——Logstash收集日志不显示问题解决

日志 详解 解决 显示 收集 十一 ELK Logstash
2023-09-14 09:01:45 时间

今天继续给大家介绍Linux运维相关知识,本文主要内容是Logstash能够收集日志,过程不报错,但是在收集日志后没有在Elasticsearch上显示索引问题的解决。

一、错误描述

在进行Logstash配合Elasticsearch进行日志收集及展现的实战过程中,经常会遇到以下情况:
在Logstash日志收集过程中很顺利,也没有报错,但是在Elasticsearch上却找不到Logstash提交的日志。Logstash命令执行过程如下所示:
在这里插入图片描述
可以看出,在上图中,Logstash最后执行结果为Successfully,即成功执行,且执行过程中,并没有报错,说明我们的Logstash执行成功。但是,Elasticsearch上却找不到我们的Logstash收集的日志,如下所示:
在这里插入图片描述

二、错误原因

其实,出现这种情况,在排除了配置文件写错之外,出现的原因很有可能是Elasticsearch和Logstash的运行BUG。如果我们的实验是在Vmware虚拟机上进行的,由于Elasticsearch和Logstash在运行时比较消耗内存等硬件资源,因此在实验时可能会出现各种意外情况。
只要Logstash运行时不报错,在理论上就会出现在Elasticsearch中。

三、解决方案

出现这种现象,我们除了重启Elasticsearch,多试几次Logstash之外,一种比较简单的方案是可以减少日志读取的量。在实战中,我们可以先实验以下,使用含有少量日志的文件先进行传输,如果没有问题,再进行内容很多的日志文件传输,如果这时传输失败,就足以证明是Elasticsearch的故障,而不是我们实战配置的问题了。

四、写在最后

当然,这种错误的出现具有偶发性,并不是每次日志量过大时都会发生。今天写这篇文章,主要目的更多的是讲述一下之前我自己在配置Logstash+Elasticsearch实战中遇上的一些情况,希望对后人有所帮助!在之前的实验中,我也曾经进行了类似的实战,有多次出现这种情况,每次都是对某个日志文件收集失败,然后将该日志文件备份后,将日志文件中的大量数据换成简单的测试数据,则结果正常。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200