在 ELK 堆栈中调试 Filebeat

Gre*_*een 5 debugging logstash elastic-stack filebeat

我的 ELK 系统有一些问题。客户端的工作如下:

Filebeat -> Logstash --> Elastic --> Kibana

我们的部分日志不会从特定机器到达 Elastic。我怀疑问题出在 Filebeat 中的日志收集上。

我试图在 Elastic 和 GitHub 网站上查找有关调试系统的信息,但我只找到了这些 链接,上面写着:

默认情况下,Filebeat 将其所有输出发送到 syslog。当您在前台运行 Filebeat 时,您可以使用 -e 命令行标志将输出重定向到标准错误。例如:

filebeat -e默认配置文件是filebeat.yml(文件位置因平台而异)。您可以通过指定 -c 标志来使用不同的配置文件。例如:

filebeat -e -c myfilebeatconfig.yml

您可以通过启用一个或多个调试选择器来增加调试消息的详细程度。例如,要查看已发布的交易,您可以使用发布选择器启动 Filebeat,如下所示:

filebeat -e -d "发布"

如果你想要所有的调试输出(公平警告,它相当多),你可以使用 *,像这样:

filebeat -e -d "*"

filebeat -e没有显示我需要什么,其他选项提供了太多信息。有没有其他方法可以使用这种特定架构来调试我们的 ELK?或者还有其他命令行选项吗?

仅供参考:我已经尝试在我的机器上设置 FileBeat 服务,它在相同filebeat.yml配置下表现出色。

gau*_*har 1

# The # character at the beginning of a line indicates a comment. Use
# comments to describe your configuration.
input {
}
# The filter part of this file is commented out to indicate that it is
# optional.
# filter {
#
# }
output {
}
Run Code Online (Sandbox Code Playgroud)

你的logstash配置中有这样的配置吗?如果是这样,任何输入问题(在您的情况下为 filebeat)都会出现在 Logstash 日志中。我在 filebeat 日志上使用了 grok 过滤器,因此日志还告诉我它是否无法解析日志行。