Redis 模块

编辑

redis 模块解析由 Redis 创建的日志和慢查询日志。

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

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

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

redis 模块有两个文件集

  • log 文件集收集和解析 Redis 写入磁盘的日志。
  • slowlog 文件集通过网络连接到 Redis,并使用 SLOWLOG 命令检索慢查询日志。

对于 log 文件集,请确保 Redis 配置文件中的 logfile 选项设置为 redis-server.log

对于 slowlog 文件集,请确保 Redis 配置文件中的 slowlog-log-slower-than 选项设置为低于默认值的值。

兼容性

编辑

Redis log 文件集已使用 Redis 1.2.6、2.4.6 和 3.0.2 版本的日志进行了测试,因此我们预期它与任何 1.x、2.x 或 3.x 版本兼容。

在 Windows 上,默认路径假设 Redis 是从 Chocolatey 存储库安装的。

Redis slowlog 文件集已使用 Redis 3.0.2 和 2.4.6 进行了测试。我们预期它与 2.2.12 之后(添加 SLOWLOG 命令时)的任何 Redis 版本兼容。

配置模块

编辑

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

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

以下示例展示了如何在 modules.d/redis.yml 文件中设置路径,以覆盖 Redis 日志的默认路径。它还展示了如何设置主机和密码来检索慢查询日志

- module: redis
  log:
    enabled: true
    var.paths: ["/path/to/log/redis/redis-server.log*"]
  slowlog:
    enabled: true
    var.hosts: ["localhost:6378"]
    var.password: "YOUR_PASSWORD"

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

-M "redis.log.var.paths=[/path/to/log/redis/redis-server.log*]" -M "redis.slowlog.var.hosts=[localhost:6378]" -M "redis.slowlog.var.password=[YOUR_PASSWORD]"

变量设置

编辑

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

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

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

log 文件集设置

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

slowlog 文件集设置

编辑
var.hosts
Filebeat 应连接以检索慢查询日志的主机数组。如果留空,则假定为 localhost:6379
var.password
用于连接到 Redis 的密码,以防启用 Redis 身份验证(Redis 配置中的 requirepass 选项)。

仪表板示例

编辑

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

kibana redis

字段

编辑

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