ログ配信 - Amazon ElastiCache for Redis

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ログ配信

注記

Redis スローログは、エンジンバージョン 6.0 以降を使用する Redis キャッシュクラスターおよびレプリケーショングループでサポートされています。

Redis エンジンログは、エンジンバージョン 6.2 以降を使用する Redis キャッシュクラスターおよびレプリケーショングループでサポートされています。

ログ配信により、Redis SLOWLOG または Redis エンジンログを 2 つの送信先のいずれかにストリーミングできます。

  • Amazon Data Firehose

  • Amazon CloudWatch Logs

API を使用して ElastiCache APIs。各ログエントリは、次の 2 つの形式のいずれかで、指定された送信先に配信されます: JSON または TEXT

一定の数のスローログエントリが Redis エンジンから定期的に取得されます。エンジンパラメータ slowlog-max-len で指定された値によっては、追加のスローログエントリが送信先に配信されないことがあります。

AWS コンソールまたは変更 APIs の 1 つである または を使用して、配信設定を変更modify-cache-clusterするか、ログ配信を無効にするかを選択できますmodify-replication-group

すべてのログ配信の変更では、apply-immediately パラメータを設定する必要があります。

注記

Amazon CloudWatch Logs 料金は、ログが Amazon Data Firehose に直接配信された場合でも、ログ配信が有効になっている場合に適用されます。詳細については、「Amazon CloudWatch 料金表」の「提供されるログ」セクションを参照してください。

スローログエントリの内容

ElastiCache for Redis スローログには、次の情報が含まれています。

  • CacheClusterId – キャッシュクラスターの ID

  • CacheNodeId – キャッシュノードの ID

  • [Id] — スローログエントリごとに一意のプログレッシブ識別子

  • [Timestamp] — ログに記録されたコマンドが処理されたときの Unix タイムスタンプ

  • [Duration] — 実行に必要な時間(マイクロ秒単位)

  • [Command] — クライアントが使用するコマンド。例えば、 set foo barfooはキー、 barは値です。Redis ElastiCache の場合、 は実際のキー名と値を に置き換え(2 more arguments)て、機密データが公開されるのを防ぎます。

  • ClientAddress – クライアントの IP アドレスとポート

  • ClientNameCLIENT SETNAME コマンドで設定されている場合のクライアント名

エンジンログエントリの内容

ElastiCache for Redis エンジンログには、次の情報が含まれています。

  • CacheClusterId – キャッシュクラスターの ID

  • CacheNodeId – キャッシュノードの ID

  • ログレベルVERBOSE("-")、、 のいずれか LogLevel を指定できますNOTICE("*")WARNING("#")

  • [Time] (時間) — ログに記録されたメッセージの UTC 時間です。時間の形式は "DD MMM YYYY hh:mm:ss.ms UTC" です。

  • [Role] (ロール) — ログの生成元のノードのロールです。「M」(プライマリ) および「S」(レプリカ) および「C」(子プロセス RDB/AOF で使用されているライター) および「X」(センチネル) のいずれかになります。

  • [Message] (メッセージ) — Redis エンジンのログメッセージです。

ログ記録を設定するアクセス許可

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.