Apache 模块

编辑

apache 模块解析 Apache HTTP 服务器创建的访问和错误日志。

当您运行该模块时,它会在后台执行以下几个任务:

  • 设置日志文件的默认路径(但不用担心,您可以覆盖默认值)
  • 确保每个多行日志事件都作为单个事件发送
  • 使用 Elasticsearch 摄取管道来解析和处理日志行,将数据塑造成适合在 Kibana 中可视化的结构
  • 部署用于可视化日志数据的仪表板

请阅读快速入门,了解如何配置和运行模块。

兼容性

编辑

apache 模块已使用 2.2.22 和 2.4.23 版本的日志进行了测试。

在 Windows 上,该模块已使用从 Chocolatey 存储库安装的 Apache HTTP Server 进行了测试。

配置模块

编辑

您可以通过在 modules.d/apache.yml 文件中指定变量设置,或者在命令行中覆盖设置,来进一步细化 apache 模块的行为。

您必须在模块中启用至少一个文件集。 默认情况下,文件集是禁用的。

以下示例展示了如何在 modules.d/apache.yml 文件中设置路径,以覆盖 Apache HTTP Server 访问和错误日志的默认路径:

- module: apache
  access:
    enabled: true
    var.paths: ["/path/to/log/apache/access.log*"]
  error:
    enabled: true
    var.paths: ["/path/to/log/apache/error.log*"]

要在命令行中指定相同的设置,您可以使用:

-M "apache.access.var.paths=[/path/to/apache/access.log*]" -M "apache.error.var.paths=[/path/to/log/apache/error.log*]"

变量设置

编辑

每个文件集都有单独的变量设置,用于配置模块的行为。如果您未指定变量设置,则 apache 模块将使用默认值。

对于高级用例,您还可以覆盖输入设置。 请参阅覆盖输入设置

当您在命令行中指定设置时,请记住在设置前加上模块名称,例如,apache.access.var.paths 而不是 access.var.paths

access 日志文件集设置

编辑
var.paths
一个基于 glob 的路径数组,用于指定查找日志文件的位置。这里也支持 Go Glob 支持的所有模式。例如,您可以使用通配符从预定义的子目录级别获取所有文件:/path/to/log/*/*.log。这将从 /path/to/log 的子文件夹中获取所有 .log 文件。它不会从 /path/to/log 文件夹本身获取日志文件。如果此设置留空,Filebeat 将根据您的操作系统选择日志路径。

error 日志文件集设置

编辑
var.paths
一个基于 glob 的路径数组,用于指定查找日志文件的位置。这里也支持 Go Glob 支持的所有模式。例如,您可以使用通配符从预定义的子目录级别获取所有文件:/path/to/log/*/*.log。这将从 /path/to/log 的子文件夹中获取所有 .log 文件。它不会从 /path/to/log 文件夹本身获取日志文件。如果此设置留空,Filebeat 将根据您的操作系统选择日志路径。

时区支持

编辑

此模块解析不包含时区信息的日志。对于这些日志,Filebeat 会读取本地时区,并在解析时使用它将时间戳转换为 UTC。用于解析的时区包含在事件的 event.timezone 字段中。

要禁用此转换,可以使用 drop_fields 处理器删除 event.timezone 字段。

如果日志来自具有与本地时区不同时区的系统或应用程序,则可以使用 add_fields 处理器用原始时区覆盖 event.timezone 字段。

有关在配置中指定处理器的信息,请参阅处理器

虚拟主机

编辑

请参阅 customlog 文档 https://httpd.apache.ac.cn/docs/2.4/en/mod/mod_log_config.html 在 httpd.conf 的日志部分添加 %v 配置

    # Replace
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    # By
    LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

示例仪表板

编辑

此模块附带一个示例仪表板。 例如

kibana apache

字段

编辑

有关模块中每个字段的描述,请参阅导出的字段部分。