使用AWS re:Post即您表示您同意 AWS re:Post 使用条款

为什么我无法在 CloudWatch 中查看 Amazon Lex 的对话日志?

2 分钟阅读
0

我无法在 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)桶。按照以下步骤添加所需的 AWS Identity and Access Management(IAM)角色和策略:

  1. 登录 Amazon Lex 控制台,然后选择要编辑的机器人。

  2. 选择设置,然后选择对话日志

  3. 选择设置图标,然后选择 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. 向角色附加 IAM 策略,允许将对话文本记录到 CloudWatch 日志:

    {
      "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. 向角色添加 IAM 策略,允许将音频记录到 S3 桶:

    {
      "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 控制台,然后选择返回 V1 控制台
  2. 选择要编辑的机器人。
  3. 选择设置,然后选择常规
  4. 选择 COPPA

Amazon Lex V2

  1. 登录 Amazon Lex V2 控制台,然后选择机器人版本
  2. 选择要使用的版本,然后选择 COPPA
  3. 如果您为要使用的版本激活了 COPPA,则无法将其停用。请前往草稿版本,然后选择 COPPA。您现在可以将 COPPA 更改为。然后,发布新版本。

进一步故障排除步骤

  1. 检查您的日志组是否与 Amazon Lex 机器人位于同一 AWS 区域。
  2. 检查您的机器人别名与您为日志记录指定的别名是否相同。对话日志是根据机器人别名配置的,因此必须与之匹配。
  3. 如果您使用 Amazon Lex V1,则不要使用 $LATEST 别名或 Amazon Lex 为测试提供的测试机器人。您无法记录其中任何一个的对话。
    注意:对话日志在 Amazon Lex V2 上运行,别名为TSTALIASID

相关信息

IAM 对话日志策略

使用对话日志进行监控

AWS 官方
AWS 官方已更新 1 年前