Amazon CloudWatch で Amazon Lex の会話ログを表示できません。
簡単な説明
CloudWatch で Amazon Lex の会話ログを表示できない理由はいくつか考えられます。例えば、Amazon Lex が CloudWatch ログを使用できるようにするための適切な許可が設定されていない場合があります。または、ボットで COPPA を有効にしている場合もあります。これは、会話ログ機能の使用を許可しません。
この記事のトラブルシューティングのステップを使用して、問題の根本原因を特定してください。
解決方法
Amazon Lex に IAM ロールとポリシーを追加する
Amazon Lex ボットが CloudWatch にログを記録できるようにするための適切な許可が付与されているかどうかを確認します。会話ログを記録するには、Amazon Lex が CloudWatch ログを使用し、会話ログを保存するために Amazon Simple Storage Service (Amazon S3) バケットにアクセスする必要があります。次のステップに従って、Amazon Lex コンソールを使用して、必要な AWS Identity and Access Management (IAM) ロールとポリシーを追加します。
1. Amazon Lex コンソールを開いて、編集するボットを選択します。
2. [Settings] (設定) を選択してから、[Conversation logs] (会話ログ) を選択します。
3. 設定アイコンを選択し、次に [IAM role] (IAM ロール) を選択します。
4. 次のような信頼関係を持つ IAM ロールを追加します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lex.amazonaws.com" //For V2 "Service": "lexv2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
5.そのロールに、CloudWatch ログへの会話テキストの記録を許可する IAM ポリシーをアタッチします。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "arn:aws:logs:region:account-id:log-group:log-group-name:*"
}
]
}
6. S3 バケットへのオーディオログの記録を許可する IAM ポリシーをロールに追加します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": "arn:aws:s3:::bucket-name/*"
}
]
}
COPPA 設定を確認する
ボットのために COPPA が有効になっていないかどうかをチェックします。COPPA を有効にしている場合、そのボットで会話ログ機能を使用することはできません。
Amazon Lex V1 の使用
この設定をチェックするには、Amazon Lex コンソールを使用してボットの一般設定を確認します。
1. Amazon Lex コンソールを開いてから、[Return to the V1 console] (V1 コンソールに戻る) を選択します。
2. 編集するボットを選択します。
2. [Settings] (設定) を選択してから、[Basic] (基本) を選択します。
3. [COPPA] を選択します。
Amazon Lex V2 を使用する
1. Amazon Lex V2 コンソールを開いてから、[bot versions] (ボットのバージョン) を選択します。
2. 使用するバージョンを選択し、次に [COPPA] を選択します。
3. 使用するバージョンに対して COPPA が有効になっている場合は、COPPA を無効にすることはできません。その代わりに、[Draft versions] (ドラフトバージョン) に移動して、[COPPA] を選択します。そうすることで、COPPA を [no] (いいえ) に変更して、新しいバージョンを発行できるようになります。
追加のトラブルシューティング手順
1. 使用しているロググループが、Amazon Lex ボットと同じリージョン内にあることを確認します。
2. 使用しているボットのエイリアスと、ログ記録を指定したエイリアスが同じであることを確認します。会話ログはボットのエイリアスに従って設定されるため、それらが一致していることが重要です。
3. $LATEST エイリアス、または Amazon Lex がテスト用に提供しているテストボットを使用していないことを確認します。どちらの会話もログに記録することはできません。
4. AWS 組織で AI サービスのオプトアウトポリシーが有効になっていないことを確認します。オプトアウトポリシーが有効になっていると、Amazon Lex は会話ログを記録しません。
関連情報
Conversation logs (会話ログ)
IAM policies for conversation logs (会話ログ向けの IAM ポリシー)
Monitoring with conversation logs (会話ログを使用したモニタリング)