Elasticsearch 模块
编辑Elasticsearch 模块编辑
这是 elasticsearch 模块。
当您运行该模块时,它会在后台执行一些任务
- 设置日志文件的默认路径(但不用担心,您可以覆盖默认值)
- 确保每个多行日志事件都作为单个事件发送
- 使用 Elasticsearch 摄取管道来解析和处理日志行,将数据整形为适合在 Kibana 中可视化的结构
阅读快速入门以了解如何配置和运行模块。
兼容性编辑
Elasticsearch 模块与 Elasticsearch 6.2 及更高版本兼容。
配置模块编辑
您可以通过在 modules.d/elasticsearch.yml
文件中指定变量设置或在命令行覆盖设置来进一步优化 elasticsearch
模块的行为。
您必须在模块中至少启用一个文件集。默认情况下禁用文件集。
变量设置编辑
每个文件集都有单独的变量设置,用于配置模块的行为。如果您没有指定变量设置,则 elasticsearch
模块将使用默认值。
对于高级用例,您还可以覆盖输入设置。请参阅覆盖输入设置。
当您在命令行指定设置时,请记住在设置前加上模块名称,例如,使用 elasticsearch.server.var.paths
而不是 server.var.paths
。
server
日志文件集设置编辑
-
var.paths
-
一个基于 glob 的路径数组,用于指定在何处查找日志文件。Go Glob 支持的所有模式在这里也受支持。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这将从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果此设置为空,Filebeat 将根据您的操作系统选择日志路径。示例配置
server: enabled: true var.paths: - /var/log/elasticsearch/*.log # Plain text logs - /var/log/elasticsearch/*_server.json # JSON logs
如果您运行的是 Elasticsearch >= 7.0.0,请将
var.paths
设置配置为指向 JSON 日志。否则,请将其配置为指向纯文本日志。
gc
日志文件集设置编辑
-
var.paths
-
一个基于 glob 的路径数组,用于指定在何处查找日志文件。Go Glob 支持的所有模式在这里也受支持。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这将从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果此设置为空,Filebeat 将根据您的操作系统选择日志路径。示例配置
gc: var.paths: - /var/log/elasticsearch/gc.log.[0-9]* - /var/log/elasticsearch/gc.log
audit
日志文件集设置编辑
-
var.paths
-
一个基于 glob 的路径数组,用于指定在何处查找日志文件。Go Glob 支持的所有模式在这里也受支持。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这将从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果此设置为空,Filebeat 将根据您的操作系统选择日志路径。示例配置
audit: var.paths: - /var/log/elasticsearch/*_access.log # Plain text logs - /var/log/elasticsearch/*_audit.json # JSON logs
如果您运行的是 Elasticsearch >= 7.0.0,请将
var.paths
设置配置为指向 JSON 日志。否则,请将其配置为指向纯文本日志。
slowlog
日志文件集设置编辑
-
var.paths
-
一个基于 glob 的路径数组,用于指定在何处查找日志文件。Go Glob 支持的所有模式在这里也受支持。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这将从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果此设置为空,Filebeat 将根据您的操作系统选择日志路径。示例配置
slowlog: var.paths: - /var/log/elasticsearch/*_index_search_slowlog.log # Plain text logs - /var/log/elasticsearch/*_index_indexing_slowlog.log # Plain text logs - /var/log/elasticsearch/*_index_search_slowlog.json # JSON logs - /var/log/elasticsearch/*_index_indexing_slowlog.json # JSON logs
如果您运行的是 Elasticsearch >= 7.0.0,请将
var.paths
设置配置为指向 JSON 日志。否则,请将其配置为指向纯文本日志。
deprecation
日志文件集设置编辑
-
var.paths
-
一个基于 glob 的路径数组,用于指定在何处查找日志文件。Go Glob 支持的所有模式在这里也受支持。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这将从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果此设置为空,Filebeat 将根据您的操作系统选择日志路径。示例配置
deprecation: var.paths: - /var/log/elasticsearch/*_deprecation.log # Plain text logs - /var/log/elasticsearch/*_deprecation.json # JSON logs
如果您运行的是 Elasticsearch >= 7.0.0,请将
var.paths
设置配置为指向 JSON 日志。否则,请将其配置为指向纯文本日志。
时区支持编辑
此模块解析不包含时区信息的日志。对于这些日志,Filebeat 读取本地时区,并在解析时使用它将时间戳转换为 UTC。用于解析的时区包含在事件的 event.timezone
字段中。
要禁用此转换,可以使用 drop_fields
处理器删除 event.timezone
字段。
如果日志来自与本地时区不同的系统或应用程序,则可以使用 add_fields
处理器将 event.timezone
字段覆盖为原始时区。
有关在配置中指定处理器的信息,请参阅处理器。
字段编辑
有关模块中每个字段的描述,请参阅导出字段部分。