如果您使用的是 Amazon Lex V2,请改为参阅 Amazon Lex V2 指南。
如果您使用的是 Amazon Lex V1,我们建议您将机器人升级到 Amazon Lex V2。我们不再向 V1 添加新功能,强烈建议使用 V2 以获得全新的机器人。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon CloudWatch 监控 Amazon Lex
要跟踪您的 Amazon Lex 机器人的运行状况,请使用 Amazon CloudWatch。借助 CloudWatch,可以获取个别 Amazon Lex 操作的指标,也可以获取账户的全局 Amazon Lex 操作的指标。您还可以设置 CloudWatch 警报,以便在一个或多个指标超出定义的阈值时收到通知。例如,您可以监控在特定的时间段内发送给自动程序的请求数量、查看成功请求的延迟,或在错误数超出阈值时发出警报。
Amazon Lex 的 CloudWatch 指标
要获取 Amazon Lex 操作的指标,必须指定以下信息:
-
指标维度。维度是用来标识指标的一组名称/值对。Amazon Lex 有三个维度:
-
BotAlias, BotName, Operation
-
BotAlias, BotName, InputMode, Operation
-
BotName, BotVersion, InputMode, Operation
-
-
指标名称,如
MissedUtteranceCount
或RuntimeRequestCount
。
您可以使用 AWS Management Console、AWS CLI 或 CloudWatch API 获取 Amazon Lex 的指标。您可以通过某个 Amazon AWS 软件开发工具包 (SDK) 或 CloudWatch API 工具来使用 CloudWatch API。Amazon Lex 控制台会根据来自 CloudWatch API 的原始数据显示一系列图表。
您必须具有适当的 CloudWatch 权限才能使用 CloudWatch 监控 Amazon Lex。有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的 Amazon CloudWatch 的身份验证和访问控制。
查看 Amazon Lex 指标
使用 Amazon Lex 控制台或 CloudWatch 控制台查看 Amazon Lex 指标。
查看指标(Amazon Lex 控制台)
登录 AWS Management Console,然后通过以下网址打开 Amazon Lex 控制台:https://console.aws.amazon.com/lex/
。 -
从自动程序列表中,选择要查看其指标的自动程序。
-
选择监控。此时指标以图表形式显示。
要查看指标(CloudWatch 控制台)
登录AWS Management Console并打开 CloudWatch 控制台,网址为 https://console.aws.amazon.com/cloudwatch/
。 -
依次选择指标、所有指标,然后选择 AWS/Lex。
-
选择维度、指标名称,然后选择 Add to graph (添加到图表)。
-
选择日期范围的值。所选日期范围的指标计数将显示在该图表中。
创建警报
一个 CloudWatch 警报在一个指定的时间段内监控一个指标,并执行一项或多项操作:向 Amazon Simple Notification Service (Amazon SNS) 主题或自动扩缩策略发送通知。具体执行什么操作取决于在您指定的一系列时间段内指标相对于给定阈值的值。CloudWatch 警报也可以在警报状态发生变化时向您发送 Amazon SNS 消息。
CloudWatch 警报仅当状态发生变化并且已持续了您指定的时间段时才会触发操作。
设置警报
登录AWS Management Console并打开 CloudWatch 控制台,网址为 https://console.aws.amazon.com/cloudwatch/
。 -
依次选择 Alarms 和 Create Alarm。
-
选择 AWS/Lex 指标,然后选择一个指标。
-
对于 Time Range,请选择要监控的时间范围,然后选择 Next。
-
输入名称和描述。
-
对于 Whenever,选择 >=,然后键入一个最大值。
-
如果您希望 CloudWatch 在达到警报状态时发送一封电子邮件,请在操作部分的每当此警报状态为… 中,选择状态为“警报”。对于发送通知到,选择一个邮件列表,或选择新建列表然后创建一个新的邮件列表。
-
预览 Alarm Preview 部分中的警报。如果对警报满意,请选择 Create Alarm (创建警报)。
Amazon Lex 运行时的 CloudWatch 指标
下表介绍 Amazon Lex 运行时指标。
指标 | 说明 |
---|---|
KendraIndexAccessError |
Amazon Lex 无法访问您的 Amazon Kendra 索引的次数。 对于
单位:计数 |
KendraLatency |
Amazon Kendra 对来自 对于
单位:毫秒 |
KendraSuccess |
从 对于
单位:计数 |
KendraSystemErrors |
Amazon Lex 无法查询 Amazon Kendra 索引的次数。 对于
单位:计数 |
KendraThrottledEvents |
Amazon Kendra 限制来自 对于
单位:计数 |
MissedUtteranceCount |
在指定时间段内未能识别的表达的数量。 对于
|
|
指定时间段内的并发连接数。 对于
其他操作的有效维度:
单位:计数 |
RuntimeInvalidLambdaResponses |
在指定时段内的无效 AWS Lambda (Lambda) 响应数量。 对于
|
RuntimeLambdaErrors |
指定时间段内的 Lambda 运行时错误数量。 对于
|
RuntimePollyErrors |
在指定时段内的无效 Amazon Polly 响应的数量。 对于
|
RuntimeRequestCount |
指定时间段内的运行时请求数。 对于
单位:计数 |
RuntimeSucessfulRequestLatency
重要该指标是 |
从发送请求到传回响应这段时间内成功的请求的延迟。 对于
单位:毫秒 |
RuntimeSystemErrors |
指定时间段内的系统错误的数量。系统错误的响应代码范围为 500 到 599。 对于
单位:计数 |
RuntimeThrottledEvents |
受限制请求的数目。当 Amazon Lex 接收的请求数超出为账户设置的每秒事务数限制时,它会限制请求。如果经常超出为账户设置的限制,您可以请求提高限制。要请求提高限制,请参阅 AWS 服务限制。 对于
单位:计数 |
RuntimeUserErrors |
指定时间段内的用户错误的数量。用户错误的响应代码范围为 400 到 499。 对于
单位:计数 |
Amazon Lex 运行时指标使用 AWS/Lex
命名空间并以下面的维度提供指标。您可以在 CloudWatch 控制台中按维度将指标进行分组:
维度 | 说明 |
---|---|
BotName, BotAlias, Operation,
InputMode |
按自动程序的别名、自动程序的名称、操作 (PostContent ) 以及输入是文本还是语音形式,对指标进行分组。 |
BotName, BotVersion, Operation,
InputMode |
按自动程序的名称、自动程序的版本、操作 (PostContent ) 以及输入是文本还是语音形式,对指标进行分组。 |
BotName, BotVersion,
Operation |
按自动程序的名称、自动程序版本以及操作 PostText 对指标进行分组。 |
BotName, BotAlias,
Operation |
按自动程序的名称、自动程序的别名以及操作 PostText 对指标进行分组。 |
Amazon Lex 通道关联的 CloudWatch 指标
通道关联是 Amazon Lex 与消息收发通道(如 Facebook)之间的关联。下表介绍 Amazon Lex 通道关联指标。
指标 | 说明 |
---|---|
BotChannelAuthErrors |
指定时间内消息收发通道返回的身份验证错误的数量。身份验证错误表示在创建通道期间提供的秘密令牌无效或者已过期。 |
BotChannelConfigurationErrors |
指定时间段内的配置错误的数量。配置错误指示通道的一个或多个配置条目无效。 |
BotChannelInboundThrottledEvents |
在指定时间段内 Amazon Lex 限制消息收发通道发送消息的次数。 |
BotChannelOutboundThrottledEvents |
在指定时间段内从 Amazon Lex 到消息收发通道的出站事件被限制的次数。 |
BotChannelRequestCount |
指定时间段内对通道发出的请求的数量 |
BotChannelResponseCardErrors |
在指定时间段内 Amazon Lex 无法发布响应卡的次数。 |
BotChannelSystemErrors |
在指定时间段内对于一个通道在 Amazon Lex 中发生的内部错误的数量。 |
Amazon Lex 通道关联指标使用 AWS/Lex
命名空间,并为以下维度提供指标。您可以在 CloudWatch 控制台中按维度将指标进行分组:
维度 | 说明 |
---|---|
BotAlias, BotChannelName, BotName,
Source |
按自动程序的别名、通道名称、自动程序的名称以及流量来源对指标进行分组。 |
对话日志的 CloudWatch 指标
Amazon Lex 为对话日志记录使用以下指标:
指标 | 说明 |
---|---|
ConversationLogsAudioDeliverySuccess |
在指定时间段内成功传输到 S3 存储桶的音频日志数量。 单位:计数 |
ConversationLogsAudioDeliveryFailure |
在指定时间段内未能传输到 S3 存储桶的音频日志数量。传输失败表示为对话日志配置的资源出现错误。错误可能包括 IAM 权限不足、无法访问的 AWS KMS 密钥或无法访问的 S3 存储桶。 单位:计数 |
ConversationLogsTextDeliverySuccess |
在指定时间段内成功传输到 CloudWatch Logs 的文本日志数量。 单位:计数 |
ConversationLogsTextDeliveryFailure |
在指定时间段内未能传输到 CloudWatch Logs 的文本日志数量。传输失败表示为对话日志配置的资源出现错误。错误可能包括 IAM 权限不足、无法访问的 AWS KMS 密钥或无法访问的 CloudWatch Logs 日志组。 单位:计数 |
Amazon Lex 对话日志指标使用 AWS/Lex
命名空间并为以下维度提供指标。您可以在 CloudWatch 控制台中按维度将指标进行分组。
维度 | 说明 |
---|---|
|
按自动程序的别名对指标进行分组。 |
|
按自动程序的名称对指标进行分组。 |
|
按自动程序的版本对指标进行分组。 |