ログ配信 - Amazon ElastiCache

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

ログ配信

注記

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

エンジンログは、Valkey 7.x、およびエンジンバージョン 6.2 以降の Redis OSSキャッシュクラスターとレプリケーショングループでサポートされています。

ログ配信を使用すると、次の 2 つの宛先のいずれかに SLOWLOGまたは エンジンログをストリーミングできます。

  • Amazon Data Firehose

  • Amazon CloudWatch Logs

を使用してクラスターを作成または変更するときに、ログ配信を有効にして設定します ElastiCache APIs。各ログエントリは、 JSONまたは の 2 つの形式のいずれかで指定された送信先に配信されますTEXT

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

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

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

注記

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

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

スローログには次の情報が含まれます。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • [Role] (ロール) — ログの生成元のノードのロールです。これは、プライマリの場合は「M」、レプリカの場合は「S」、センチネルの場合は RDB/AOF で作業するライターの子プロセスの場合は「C」のいずれかになります。

  • メッセージ – エンジンログメッセージ。

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

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.