Redis 模块
编辑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 更新的 Redis 版本兼容,因为 SLOWLOG 命令是在 2.2.12 中添加的。
配置模块编辑
你可以通过在 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
选项)。
示例仪表板编辑
该模块附带一个示例仪表板。例如
字段编辑
有关模块中每个字段的描述,请参阅 导出字段 部分。