本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
日誌傳送
注意
Valkey 7.x 和更新版本支援慢速日誌,以及使用引擎 6.0 版更新的 Redis OSS 快取叢集和複寫群組。
Valkey 7.x 和 Redis OSS 快取叢集和使用引擎 6.2 版之後的複寫群組都支援引擎日誌。
日誌交付可讓您將 SLOWLOG
Amazon Data Firehose
Amazon CloudWatch Logs
使用 ElastiCache API 建立或修改叢集時,可以啟用和設定日誌傳送功能。每個日誌項目會以下列兩種格式之一傳送至指定目的地:JSON 或 TEXT。
定期從引擎擷取固定數量的慢速日誌項目。根據為引擎參數slowlog-max-len
指定的值,可能無法將其他慢速日誌項目傳送至目的地。
您可以選擇隨時使用 AWS 主控台或其中一個修改 APIs 來變更交付組態或停用日誌交付,可以是 modify-cache-cluster 或 modify-replication-group。
您必須設定 apply-immediately
參數以進行所有日誌傳送修改。
注意
啟用日誌交付時,即使日誌直接交付至 Amazon Data Firehose,也會收取 Amazon CloudWatch Logs 費用。如需詳細資訊,請參閱 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
Log level – 日誌等級可為下列任一項目:
VERBOSE("-")
、NOTICE("*")
、WARNING("#")
。Time – 所記錄訊息的 UTC 時間。時間格式如下:
"DD MMM YYYY hh:mm:ss.ms UTC"
Role – 從中發出日誌之節點的角色。可為下列任一項:「M」代表主要、「S」代表複本、「C」代表 RDB/AOF 上執行的寫入器子程序、「X」代表佈哨功能。
訊息 – 引擎日誌訊息。
設定記錄功能的許可
您需要在 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.