本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
日志传输
注意
使用 6.0 和更高版本引擎的 Valkey 7.x 及更高版本以及 Redis OSS 缓存集群和复制组支持慢日志。
使用 6.2 和更高版本引擎的 Valkey 7.x 及更高版本以及 Redis OSS 缓存集群和复制组支持引擎日志。
日志传输可让您将慢日志
Amazon Data Firehose
Amazon CloudWatch 日志
使用创建或修改集群时,您可以启用和配置日志传输 ElastiCache APIs。每个日志条目将以两种格式之一传输到指定的目的地:JSON 或 TEXT。
将定期从引擎中检索固定数量的慢日志条目。根据针对引擎参数 slowlog-max-len
指定的值,可能不会将其他慢日志条目传送到目的地。
您可以随时使用 Amazon 控制台或其中一个修改选项选择更改传输配置或禁用日志传输 APIs,即modify-cache-cluster或modify-replication-group。
您必须为所有日志传输修改设置 apply-immediately
参数。
注意
启用 CloudWatch 日志传输后,即使日志直接传送到 Amazon Data Firehose,也会收取亚马逊日志费用。有关更多信息,请参阅 Amazon CloudWatch 定价
慢日志条目的内容
慢日志包含以下信息:
CacheClusterId— 缓存集群的 ID
CacheNodeId— 缓存节点的 ID
Id – 每个慢日志条目的唯一渐进式标识符
Timestamp – 处理已录入的命令时的 Unix 时间戳
Duration – 其执行所需的时间(以微秒为单位)
Command – 客户端使用的命令。例如,
set foo bar
其中foo
是键,其中bar
是值。 ElastiCache 将实际的密钥名称和值替换(2 more arguments)
为以避免暴露敏感数据。ClientAddress— 客户端 IP 地址和端口
ClientName— 客户端名称(如果通过
CLIENT SETNAME
命令设置)
引擎日志条目的内容
引 ElastiCache 擎日志包含以下信息:
CacheClusterId— 缓存集群的 ID
CacheNodeId— 缓存节点的 ID
日志级别 — LogLevel 可以是以下任一项:
VERBOSE("-")
、NOTICE("*")
、WARNING("#")
。Time – 日志消息的 UTC 时间。时间采用以下格式:
"DD MMM YYYY hh:mm:ss.ms UTC"
Role – 发出日志的节点的角色。它可以是以下值之一:“M”表示主角色,“S”表示副本,“C”表示在 RDB/AOF 上工作的写入器子进程,“X”表示 Sentinel。
Message – 引擎日志消息。
配置日志记录的权限
您需要在您的 IAM 用户/角色策略中包含以下 IAM 权限:
logs:CreateLogDelivery
logs:UpdateLogDelivery
logs:DeleteLogDelivery
logs:GetLogDelivery
logs:ListLogDeliveries
有关更多信息,请参阅访问管理概览:权限和策略。
日志类型和日志格式规范
慢日志
慢日志支持 JSON 和 TEXT 两种格式
以下示例演示了 JSON 格式:
{ "CacheClusterId": "logslowxxxxmsxj", "CacheNodeId": "0001", "Id": 296, "Timestamp": 1605631822, "Duration (us)": 0, "Command": "GET ... (1 more arguments)", "ClientAddress": "192.168.12.104:55452", "ClientName": "logslowxxxxmsxj##" }
以下示例演示了 TEXT 格式:
logslowxxxxmsxj,0001,1605631822,30,GET ... (1 more arguments),192.168.12.104:55452,logslowxxxxmsxj##
引擎日志
引擎日志支持 JSON 和 TEXT 两种格式
以下示例演示了 JSON 格式:
{ "CacheClusterId": "xxxxxxxxxzy-engine-log-test", "CacheNodeId": "0001", "LogLevel": "VERBOSE", "Role": "M", "Time": "12 Nov 2020 01:28:57.994 UTC", "Message": "Replica is waiting for next BGSAVE before synchronizing with the primary. Check back later" }
以下示例演示了 TEXT 格式:
xxxxxxxxxxxzy-engine-log-test/0001:M 29 Oct 2020 20:12:20.499 UTC * A slow-running Lua script detected that is still in execution after 10000 milliseconds.