您的位置:

filebeat的启动指南

一、filebeat启动命令详解

Filebeat是一个轻量级的日志搜集器。在启动 Filebeat 前,确保所有感兴趣的文件被添加到 Filebeat 配置文件中。要启动 Filebeat,请在终端中运行:


./filebeat -e

通过 -e 标志启用 诊断输出。Filebeat 将输出到终端。默认情况下,Filebeat 会从启动文件夹中的默认配置文件 filebeat.yml 读取配置信息。

二、filebeat启动没有连接logstash

Filebeat 作为一个轻量级的数据搜集器,可以通过直接将数据发送到 Elasticsearch 来缩小部署规模。如果您没有想要使用 Logstash,请确保在 filebeat.yml 文件中关于 Logstash 的配置项被注释掉。


output.elasticsearch:
  hosts: ["localhost:9200"]
  protocol: "https"

三、filebeat启动命令

Filebeat 启动命令格式如下:


./filebeat [-c|--configtest] [-e] [-d [output|config]] [-h] [--once] [-v] [-version] 

命令选项说明:

  • -c--configtest:解析配置文件并打印有效配置,然后退出。
  • -e:启用记录结构化日志。
  • -d:更详细的输出
  • --once: Filebeat 启动一次并退出。通常用于调试。
  • -v:启用短格式记录结构化日志。
  • -version:输出Filebeat版本信息并退出。

四、filebeat启动日志

Filebeat 启动日志是查找问题的有用来源。Filebeat 将消息写入以下文件:

  • filebeat:包含启动和终止跟踪信息。
  • filebeat-stdout:包含诊断输出(如果使用 -e 标志启动)。

日志文件位于以下位置:

  • Debian 或 Ubuntu:/var/log/filebeat
  • Mac 和 Windows:在 Filebeat 安装目录下
  • Docker:在容器内部 /usr/share/filebeat/data/logs 文件夹

五、filebeat启动参数

启动 Filebeat 时,可以通过命令行或配置文件中的参数来控制其行为。这是一些常见参数:

  • filebeat.config_dir:指定配置文件所在目录。
  • filebeat.config_path:指定配置文件完整路径。
  • filebeat.harvester.buffer_size:用于控制日志记录缓冲区的大小。
  • filebeat.idle_timeout:控制轮询延迟。

六、filebeat启动Windows

在 Windows 操作系统上以管理员身份运行命令提示符,切换到 Filebeat 安装目录:


cd C:\Program Files\Filebeat

然后运行相对路径启动 Filebeat:


.\filebeat.exe -e

七、filebeat启动端口

Filebeat 主要使用以下两个端口:

  • 下面是 Filebeat 向 Elasticsearch 发送消息时使用的端口:
    • 9200 默认 HTTP 端口。
    • 9300 默认 HTTP 端口。
  • 使用 Logstash 时有用的端口:
    • 5044 默认 Logstash 端口。
    • 9600 默认 Logstash 监听端口。

八、启动filebeat命令

使用正确的权限运行以下命令:


sudo systemctl start filebeat.service

要在启动时自动启动 Filebeat,请运行:


sudo systemctl enable filebeat.service

九、es看不到索引呢

如果 Elasticsearch 找不到 Filebeat 创建的索引,可能是由于配置文件中有错误、网络连接问题或 Elasticsearch 的其他问题。可以通过以下方式查找问题。

首先检查 Filebeat 日志,以查看更多详细信息。查找错误消息以了解导致索引未被创建的原因。

检查 Elasticsearch 是否正在运行,并使用命令行工具(例如 cURL)测试连接。如果测试失败,请检查任何安全设置、防火墙规则等。如果 Elasticsearch 已经运行,但仍然找不到索引,可以启用更详细的日志输出,并检查 Elasticsearch 的日志以查找其他问题。

十、filebeat配置

下面是一个简单的示例配置,用于从单个文件中读取行并将其发送到 Elasticsearch:


filebeat.inputs:
  - type: log
    enabled: true
    paths:
      - /path/to/log/file.log
    output.elasticsearch:
      hosts: ["localhost:9200"]
      username: "elastic"
      password: "changeme"

此配置包括以下内容:

  • 一个类型为 log 的输入,用于从文件中读取行。
  • enabled 字段指示是否启用此输入。
  • paths 字段指示从哪些文件读取日志行。
  • 一个 Elasticsearch 输出,用于将读取的日志行发送到 Elasticsearch 中。

通过这篇文章和以上的介绍,你已经可以掌握如何使用 filebeat 来更好地管理你的日志了。