翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWSSupport-CollectAmazonConnectContactFlowLog
説明
AWSSupport-CollectAmazonConnectContactFlowLog
オートメーションランブックは、特定の問い合わせ ID の Amazon Connect 問い合わせフローログを収集するために使用します。Amazon Connect インスタンス ID と問い合わせ ID を指定することで、ランブックは Amazon ロググループから問い合わせフロー CloudWatch ログを検索し、リクエストパラメータで指定された Amazon Simple Storage Service (Amazon S3) バケットにアップロードします。ランブックは、ログをダウンロードするための Amazon S3 コンソールURLと AWS CLIコマンドを提供する出力を生成します。
動作の仕組み
AWSSupport-CollectAmazonConnectContactFlowLog
自動化ランブックは、設定された CloudWatchロググループに保存されている特定の問い合わせ ID の Amazon Connect 問い合わせフローログを収集し、指定された Amazon S3 バケットにアップロードするのに役立ちます。Amazon Connect の問い合わせフローから収集されたログのセキュリティをサポートするために、オートメーションは Amazon S3 バケット設定を評価して、バケットがパブリックアクセス許可read
またはwrite
アクセス許可を付与し、 S3BucketOwnerAccountId
パラメータで指定された AWS アカウントによって所有されているかどうかを判断します。Amazon S3 バケットが AWS Key Management Service キー (SSE-KMS) によるサーバー側の暗号化を使用している場合は、このオートメーションを実行しているユーザーまたは AWS Identity and Access Management (IAM) ロールに AWS KMS キーに対するkms:GenerateDataKey
アクセス許可があることを確認してください。Amazon Connect インスタンスによって生成されるログの詳細については、「Amazon ロググループ に保存されているフロー CloudWatch ログ」を参照してください。
重要
CloudWatch Logs Insights クエリには、クエリされるデータの量に基づいて料金が発生します。無料利用枠のお客様は、サービスクォータを超える使用に対してのみ料金が発生します。詳細については、「Amazon CloudWatch の料金
ドキュメントタイプ
Automation
[所有者]
Amazon
[Platforms] (プラットフォーム)
Linux、macOS、Windows
パラメータ
必要なIAMアクセス許可
AutomationAssumeRole
パラメータでは、ランブックを正常に使用するために、次のアクションが必要です。
{ "Statement": [ { "Action": [ "s3:GetBucketPublicAccessBlock", "s3:GetBucketPolicyStatus", "s3:GetBucketAcl", "s3:GetObject", "s3:GetObjectAttributes", "s3:PutObject", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
/*", "arn:aws:s3:::amzn-s3-demo-bucket
" ], "Effect": "Allow" }, { "Action": [ "connect:DescribeInstance", "connect:DescribeContact", "ds:DescribeDirectories" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "logs:StartQuery", "logs:GetQueryResults" "Resource": "*", "Effect": "Allow" } ] }
Instructions
次の手順に従って自動化を設定します。
-
Systems Manager
AWSSupport-CollectAmazonConnectContactFlowLog
の「ドキュメント」で に移動します。 -
[Execute automation] (オートメーションを実行) を選択します。
-
入力パラメータには、次のように入力します。
-
AutomationAssumeRole (オプション):
Systems Manager Automation がユーザーに代わってアクションを実行できるようにする () ロールARNの Amazon リソースネーム AWS Identity and Access Management (IAM)。ロールが指定されていない場合、Systems Manager Automation は、このランブックを開始するユーザーのアクセス許可を使用します。
-
ConnectInstanceId (必須):
Amazon Connect インスタンスの ID。
-
ContactId (必須):
問い合わせフローログを収集する問い合わせの ID。
-
S3BucketName (必須):
問い合わせフローログをアップロードするアカウントの Amazon S3 バケット名。バケットポリシーが、収集されたログへのアクセスを必要としないユーザーに不要な読み取り/書き込みアクセス許可を付与していないことを確認してください。
-
S3ObjectPrefix (オプション):
アップロードされた問い合わせフローログの Amazon S3 バケット内の Amazon S3 オブジェクトパス。例えば、 を指定すると
CollectedLogs
、ログは としてアップロードされますs3://your-s3-bucket/CollectedLogs/ContactFlowLog_[ContactId][AWSAccountId].gz
。このパラメータを指定しない場合、Systems Manager Automation の実行 ID が使用されます。例:s3://your-s3-bucket/[automation:EXECUTION_ID]/ContactFlowLog[ContactId]_[AWSAccountId].gz
。注: の値を指定S3ObjectPrefix
し、同じ [ContactId] を使用してこのオートメーションを実行すると、問い合わせフローログが上書きされます。 -
S3BucketOwnerAccount (オプション):
問い合わせフローログをアップロードする Amazon S3 バケットを所有する AWS アカウント番号。このパラメータを指定しない場合、ランブックはオートメーションを実行するユーザーまたはロールの AWS アカウント ID を使用します。
-
S3BucketOwnerRoleArn (オプション):
Amazon S3 バケットとアカウントブロックのパブリックアクセス設定、バケット暗号化設定、バケット 、ACLsバケットポリシーステータスを取得し、バケットにオブジェクトをアップロードするアクセス許可を持つIAMロールARNの 。このパラメータが指定されていない場合、ランブックは、このランブックを開始する
AutomationAssumeRole
(指定されている場合) またはユーザー ( が指定されAutomationAssumeRole
ていない場合) を使用します。ランブックの説明の「必要なアクセス許可」セクションを参照してください。
-
-
[実行] を選択します。
-
自動化が開始されます。
-
ドキュメントは以下のステップを実行します。
-
CheckConnectInstanceExistance
で提供される Amazon Connect インスタンス
ConnectInstanceId
が かどうかを確認しますACTIVE
。 -
CheckS3BucketPublicStatus
で指定された Amazon S3 バケットが、匿名またはパブリックの読み取り/書き込みアクセス許可
S3BucketName
を許可しているかどうかを確認します。 -
GenerateLogSearchTimeRange
に基づいて
StartQuery
ステップEndTime
のStartTime
とInitiationTimestamp
を生成し、 によってLastUpdateTimestamp
返されますAPI。StartTime
は 1DescribeContact
時間前InitiationTimestamp
、 は 1 時間後EndTime
になりますLastUpdateTimestamp
。 -
StartQuery
で提供される Amazon Connect インスタンスに関連付けられた
ContactId
CloudWatch Logs ロググループで提供される のクエリログを開始しますConnectInstanceId
。クエリは 60 分のランタイム後にタイムアウトします。クエリがタイムアウトした場合は、検索する時間範囲を短くします。現在進行中のクエリと最近のクエリ履歴を CloudWatch コンソールで表示できます。詳細については、「実行中のクエリを表示する」または「クエリ履歴」を参照してください。 -
WaitForQueryCompletion
指定された が完了するまで、 CloudWatch ログクエリログ
ContactId
を待ちます。クエリは 60 分のランタイム後にタイムアウトすることに注意してください。クエリがタイムアウトした場合は、検索する時間範囲を短くします。現在進行中のクエリと最近のクエリ履歴は、Amazon Connect コンソールで表示できます。詳細については、「実行中のクエリを表示する」または「クエリ履歴」を参照してください。 -
UploadContactFlowLog
クエリ結果を取得し、問い合わせフローログを で指定された Amazon S3 バケットにアップロードします
S3BucketName
。 -
GenerateReport
問い合わせフローログURLがアップロードされた Amazon S3 コンソールと、ログファイルのダウンロードに使用できるコマンドの例 AWS CLIを返します。
-
-
完了したら、出力セクションで実行の詳細な結果を確認します。
-
GenerateReport.OutputPayload
ランブックが指定された問い合わせの問い合わせフローログを正常に取得したことを通知する出力。このレポートには、ログファイルをダウンロードできるように、Amazon S3 コンソールURLとコマンドの例 AWS CLIも含まれています。
-
リファレンス
Systems Manager Automation