

支援終止通知：2025 年 9 月 15 日， AWS 將停止對 Amazon Lex V1 的支援。2025 年 9 月 15 日之後，您將無法再存取 Amazon Lex V1 主控台或 Amazon Lex V1 資源。如果您使用的是 Amazon Lex V2，請改參閱 [Amazon Lex V2 指南](https://docs.aws.amazon.com/lexv2/latest/dg/what-is.html)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 對話日誌
<a name="conversation-logs"></a>

您可以啟用「對話日誌」**來存放機器人互動。您可以使用這些日誌來檢閱機器人的效能，以及疑難排解對話的問題。您可以記錄 [PostText](API_runtime_PostText.md) 操作的文字。您可以同時記錄 [PostContent](API_runtime_PostContent.md) 操作的文字和音訊。透過啟用對話日誌，您可以詳細檢視使用者與您機器人的對話。

例如，具有您機器人的工作階段有一個工作階段 ID。您可以使用此 ID 來取得對話的記錄，包括使用者表達用語和對應的機器回應。您還可以取得中繼資料，例如表達用語的意圖名稱和槽值。

**注意**  
由於受到兒童線上隱私保護法案 (COPPA) 的限制，您無法搭配機器人使用對話日誌。

對話日誌是針對別名設定的。每個別名都可以對其文字和音訊日誌具有不同的設定。您可以為每個別名啟用文字日誌、音訊日誌或兩者。文字日誌會將文字輸入、音訊輸入的文字記錄和相關聯的中繼資料儲存在 CloudWatch Logs 中。音訊日誌將音訊輸入儲存在 Amazon S3 中。您可以使用 AWS KMS 客戶受管 CMKs 啟用文字和音訊日誌的加密。

若要設定記錄，請使用主控台或 [PutBotAlias](API_PutBotAlias.md) 操作。您無法記錄機器人`$LATEST`別名或 Amazon Lex 主控台中可用測試機器人的對話。啟用別名的對話日誌後，[PostContent](API_runtime_PostContent.md)或該別名[PostText](API_runtime_PostText.md)的操作會將文字或音訊表達用語記錄在設定的 CloudWatch Logs 日誌群組或 S3 儲存貯體中。

**Topics**
+ [對話日誌的 IAM 政策](conversation-logs-policies.md)
+ [設定對話日誌](conversation-logs-configure.md)
+ [加密對話日誌](conversation-logs-encrypting.md)
+ [在 Amazon CloudWatch Logs 中檢視文字日誌](conversation-logs-cw.md)
+ [在 Amazon S3 中存取音訊日誌](conversation-logs-s3.md)
+ [使用 CloudWatch 指標監控對話日誌狀態](conversation-logs-monitoring.md)

# 對話日誌的 IAM 政策
<a name="conversation-logs-policies"></a>

根據您選取的記錄類型，Amazon Lex 需要使用 Amazon CloudWatch Logs 和 Amazon Simple Storage Service (S3) 儲存貯體來存放日誌的許可。您必須建立 AWS Identity and Access Management 角色和許可，才能讓 Amazon Lex 存取這些資源。

## 建立對話日誌的 IAM 角色和政策
<a name="conversation-logs-role-and-policy"></a>

若要啟用對話日誌，您必須授予 CloudWatch Logs 和 Amazon S3 的寫入許可。如果您為 S3 物件啟用物件加密，則需要將存取許可授予用於加密物件的 AWS KMS 金鑰。

您可以使用 IAM AWS 管理主控台、IAM API 或 AWS Command Line Interface 來建立角色和政策。這些指示使用 AWS CLI 來建立角色和政策。如需有關使用主控台建立政策的資訊，請參閱《*AWS Identity and Access Management 使用者指南*》中的[在 JSON 標籤上建立政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html#access_policies_create-json-editor)。

**注意**  
下列程式碼是針對 Linux 和 MacOS 格式化的。若為 Windows，請將接續字元 (\$1) 取代為插入符號 (^)。



**為對話日誌建立 IAM 角色**

1. 在稱為 **LexConversationLogsAssumeRolePolicyDocument.json** 的目前目錄中建立一個文件、將下列程式碼新增至其中，然後儲存它。此政策文件會將 Amazon Lex 新增為角色的信任實體。這可讓 Lex 擔任將日誌傳遞至專為對話日誌設定的資源角色。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": "lex.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1. 在 中 AWS CLI，執行下列命令來建立對話日誌的 IAM 角色。

   ```
   aws iam create-role \
       --role-name role-name \
       --assume-role-policy-document file://LexConversationLogsAssumeRolePolicyDocument.json
   ```

接著，建立政策並將其連接至 角色，讓 Amazon Lex 能夠寫入 CloudWatch Logs。

**建立將對話文字記錄到 CloudWatch Logs 的 IAM 政策**

1. 在名為 的目前目錄中建立文件**LexConversationLogsCloudWatchLogsPolicy.json**，將下列 IAM 政策新增至其中，然後儲存它。

1. 在 中 AWS CLI，建立將寫入許可授予 CloudWatch Logs 日誌群組的 IAM 政策。

   ```
   aws iam create-policy \
       --policy-name cloudwatch-policy-name \
       --policy-document file://LexConversationLogsCloudWatchLogsPolicy.json
   ```

1. 將政策連接至您為對話日誌建立的 IAM 角色。

   ```
   aws iam attach-role-policy \
       --policy-arn arn:aws:iam::account-id:policy/cloudwatch-policy-name \
       --role-name role-name
   ```

如果您要將音訊記錄到 S3 儲存貯體，請建立可讓 Amazon Lex 寫入儲存貯體的政策。

**建立 IAM 政策以將音訊記錄到 S3 儲存貯體**

1. 在稱為 **LexConversationLogsS3Policy.json** 的目前目錄中建立一個文件、將下列政策新增至其中，然後儲存它。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                 "s3:PutObject"
             ],
             "Resource": "arn:aws:s3:::bucket-name/*"
         }
     ]
   }
   ```

------

1. 在 中 AWS CLI，建立將寫入許可授予 S3 儲存貯體的 IAM 政策。

   ```
   aws iam create-policy \
       --policy-name s3-policy-name \
       --policy-document file://LexConversationLogsS3Policy.json
   ```

1. 將此政策附加到您為對話日誌建立的角色。

   ```
   aws iam attach-role-policy \
       --policy-arn arn:aws:iam::account-id:policy/s3-policy-name \
       --role-name role-name
   ```

## 授予許可以傳遞 IAM 角色
<a name="conversation-logs-pass-role"></a>

當您使用 主控台 AWS Command Line Interface、 或 AWS 開發套件來指定用於對話日誌的 IAM 角色時，指定對話日誌的使用者 IAM 角色必須具有將角色傳遞給 Amazon Lex 的許可。若要允許使用者將角色傳遞給 Amazon Lex，您必須將`PassRole`許可授予使用者、角色或群組。

下列政策會定義授予使用者、角色或群組的許可。您可以使用 `iam:AssociatedResourceArn` 和 `iam:PassedToService` 條件金鑰來限制許可的範圍。如需詳細資訊，請參閱《 *AWS Identity and Access Management 使用者指南*》中的[授予使用者將角色傳遞至 AWS 服務和 IAM 和條件內容金鑰的許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html)。 [AWS STS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_iam-condition-keys.html)

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::111122223333:role/role-name",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "lex.amazonaws.com"
                },
                "StringLike": {
                    "iam:AssociatedResourceARN": "arn:aws:lex:region:123456789012:bot:bot-name:bot-alias"
                }
            }
        }
    ]
}
```

------

# 設定對話日誌
<a name="conversation-logs-configure"></a>

您可以使用主控台或 `PutBotAlias` 操作的 `conversationLogs` 欄位，啟用和停用對話日誌。您可以開啟或關閉音訊日誌、文字日誌或兩者。記錄會在新的機器人工作階段開始。對於作用中的工作階段，不會反映日誌設定的變更。

若要存放文字日誌，請在 AWS 您的帳戶中使用 Amazon CloudWatch Logs 日誌群組。您可以使用任何有效的日誌群組。日誌群組必須與 Amazon Lex 機器人位於相同的區域。如需建立 CloudWatch Logs 日誌群組的詳細資訊，請參閱《*Amazon CloudWatch Logs 使用者指南》中的*[使用日誌群組和日誌串流](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html)。

若要存放音訊日誌，請在 AWS 您的帳戶中使用 Amazon S3 儲存貯體。您可以使用任何有效的 S3 儲存貯體。儲存貯體必須與 Amazon Lex 機器人位於相同的區域。如需建立 S3 儲存貯體的詳細資訊，請參閱《*Amazon Simple Storage Service 入門指南*》中的[建立儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/gsg/CreatingABucket.html)。

您必須為 IAM 角色提供政策，讓 Amazon Lex 能夠寫入已設定的日誌群組或儲存貯體。如需詳細資訊，請參閱[建立對話日誌的 IAM 角色和政策](conversation-logs-policies.md#conversation-logs-role-and-policy)。

如果您使用 建立服務連結角色 AWS Command Line Interface，則必須使用 `custom-suffix`選項將自訂尾碼新增至角色，如下所示：

```
aws iam create-service-linked-role \
    --aws-service-name lex.amazon.aws.com \
    --custom-suffix suffix
```

您用來啟用對話日誌的 IAM 角色必須具有 `iam:PassRole`許可。下列政策應連接至角色。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::111122223333:role/role"
        }
    ]
}
```

------

## 啟用對話日誌
<a name="conversation-logs-enable"></a>

**使用主控台開啟日誌**

1. 開啟 Amazon Lex 主控台 https：//[https://console.aws.amazon.com/lex](https://console.aws.amazon.com/lex)。

1. 從清單中選擇一個機器人。

1. 選擇 **Settings (設定)** 標籤，然後從左側功能表中選擇 **Conversation logs (對話日誌)**。

1. 在別名清單中，為您要設定對話日誌的別名選擇設定圖示。

1. 選取要記錄文字、音訊或兩者。

1. 針對文字記錄，輸入 Amazon CloudWatch Logs 日誌群組名稱。

1. 若要記錄音訊，請輸入 S3 儲存貯體資訊。

1. 選用。若要加密音訊日誌，請選擇用於加密的 AWS KMS 金鑰。

1. 選擇具有必要許可的 IAM 角色。

1. 選擇 **Save (儲存)** 以開始記錄對話。

**使用 API 開啟文字日誌**

1. 使用 `conversationLogs` 欄位的 `logSettings` 成員中的項目呼叫 [PutBotAlias](API_PutBotAlias.md) 操作
   + 將 `destination` 成員設定為 `CLOUDWATCH_LOGS`
   + 將 `logType` 成員設定為 `TEXT`
   + 將`resourceArn`成員設定為 CloudWatch Logs 日誌群組的 Amazon Resource Name (ARN)，這是日誌的目的地

1. 將 `conversationLogs` 欄位`iamRoleArn`的成員設定為 IAM 角色的 Amazon Resource Name (ARN)，該角色具有在指定資源上啟用對話日誌所需的許可。

**使用 API 開啟音訊日誌**

1. 使用 `conversationLogs` 欄位的 `logSettings` 成員中的項目呼叫 [PutBotAlias](API_PutBotAlias.md) 操作
   + 將 `destination` 成員設定為 `S3`
   + 將 `logType` 成員設定為 `AUDIO`
   + 將 `resourceArn` 成員設定為音訊日誌儲存所在之 Amazon S3 儲存貯體的 ARN
   + 選用。若要使用特定 AWS KMS 金鑰加密音訊日誌，請設定用於加密之金鑰的 ARN `kmsKeyArn`成員。

1. 將 `conversationLogs` 欄位`iamRoleArn`的成員設定為 IAM 角色的 Amazon Resource Name (ARN)，該角色具有在指定資源上啟用對話日誌所需的許可。

## 停用對話日誌
<a name="conversation-logs-disable"></a>

**使用主控台關閉日誌**

1. 開啟 Amazon Lex 主控台 https：//[https://console.aws.amazon.com/lex](https://console.aws.amazon.com/lex)。

1. 從清單中選擇一個機器人。

1. 選擇 **Settings (設定)** 標籤，然後從左側功能表中選擇 **Conversation logs (對話日誌)**。

1. 在別名清單中，為您要設定對話日誌的別名選擇設定圖示。

1. 清除文字、音訊或兩者的核取方塊以關閉記錄。

1. 選擇 **Save (儲存)** 以停止記錄對話。

**使用 API 關閉日誌**
+ 呼叫沒有 `conversationLogs` 欄位的 `PutBotAlias` 操作。

**使用 API 關閉文字日誌**
+ 
  + 如果您是記錄音訊
    + 呼叫只對 `AUDIO` 具有 `logSettings` 項目的 [PutBotAlias](API_PutBotAlias.md) 操作。
    + 對 `PutBotAlias` 操作的呼叫必須沒有 `TEXT` 的 `logSettings` 項目。
  + 如果您不是記錄音訊
    + 呼叫沒有 `conversationLogs` 欄位的 [PutBotAlias](API_PutBotAlias.md) 操作。

**使用 API 關閉音訊日誌**
+ 
  + 如果您是記錄文字
    + 呼叫只對 `TEXT` 具有 `logSettings` 項目的 [PutBotAlias](API_PutBotAlias.md) 操作。
    + 對 `PutBotAlias` 操作的呼叫必須沒有 `AUDIO` 的 `logSettings` 項目。
  + 如果您不是記錄文字
    + 呼叫沒有 `conversationLogs` 欄位的 [PutBotAlias](API_PutBotAlias.md) 操作。

# 加密對話日誌
<a name="conversation-logs-encrypting"></a>

您可以使用加密來協助保護對話日誌的內容。對於文字和音訊日誌，您可以使用 AWS KMS 客戶受管 CMKs 來加密 CloudWatch Logs 日誌群組和 S3 儲存貯體中的資料。

**注意**  
Amazon Lex 僅支援對稱 CMKs。請不要使用非對稱 CMK 來加密資料。

您可以在 Amazon Lex 用於文字日誌的 CloudWatch Logs 日誌群組上使用 AWS KMS 金鑰啟用加密。您無法在日誌設定中提供 AWS KMS 金鑰來啟用日誌群組的 AWS KMS 加密。如需詳細資訊，請參閱《Amazon [ CloudWatch Logs 使用者指南》中的使用 加密 CloudWatch Logs AWS KMS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)中的日誌資料。 *Amazon CloudWatch *

對於音訊日誌，您可以在 S3 儲存貯體上使用預設加密，或指定 AWS KMS 金鑰來加密音訊物件。即使您的 S3 儲存貯體使用預設加密，您仍然可以指定不同的 AWS KMS 金鑰來加密音訊物件。如需詳細資訊，請參閱[《Amazon S3 Simple Storage Service 開發人員指南》中的適用於 S3 儲存貯體的 Amazon S3 預設加密](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html)。 **

如果您選擇加密音訊日誌，Amazon Lex 需要 AWS KMS 許可。您需要將其他政策連接至用於對話日誌的 IAM 角色。如果您在 S3 儲存貯體上使用預設加密，您的政策必須授予對該儲存貯體所設定 AWS KMS 金鑰的存取權。如果您在音訊日誌設定中指定 AWS KMS 金鑰，則必須授予該金鑰的存取權。

如果您未建立對話日誌的角色，請參閱[對話日誌的 IAM 政策](conversation-logs-policies.md)。

**使用 AWS KMS 金鑰來加密音訊日誌，以建立 IAM 政策**

1. 在稱為 **LexConversationLogsKMSPolicy.json** 的目前目錄中建立一個文件、將下列政策新增至其中，然後儲存它。

1. 在 中 AWS CLI，建立授予許可的 IAM 政策，以使用 AWS KMS 金鑰來加密音訊日誌。

   ```
   aws iam create-policy \
       --policy-name kms-policy-name \
       --policy-document file://LexConversationLogsKMSPolicy.json
   ```

1. 將此政策附加到您為對話日誌建立的角色。

   ```
   aws iam attach-role-policy \
       --policy-arn arn:aws:iam::account-id:policy/kms-policy-name \
       --role-name role-name
   ```

# 在 Amazon CloudWatch Logs 中檢視文字日誌
<a name="conversation-logs-cw"></a>

Amazon Lex 會將對話的文字日誌儲存在 Amazon CloudWatch Logs 中。若要檢視日誌，您可以使用 CloudWatch Logs 主控台或 API。如需詳細資訊，請參閱《Amazon CloudWatch Logs 使用者指南》中的[使用篩選條件模式搜尋日誌資料](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SearchDataFilterPattern.html)和 CloudWatch Logs Insights 查詢語法。 [CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html) *Amazon CloudWatch *

**使用 Amazon Lex 主控台檢視日誌**

1. 開啟 Amazon Lex 主控台 https：//[https://console.aws.amazon.com/lex](https://console.aws.amazon.com/lex)。

1. 從清單中選擇一個機器人。

1. 選擇 **Settings (設定)** 標籤，然後從左側功能表中選擇 **Conversation logs (對話日誌)**。

1. 選擇**文字日誌**下方的連結，以在 CloudWatch 主控台中檢視別名的日誌。

您也可以使用 CloudWatch 主控台或 API 來檢視您的日誌項目。若要尋找日誌項目，請導覽至您針對別名設定的日誌群組。您可以在 Amazon Lex 主控台或使用 [GetBotAlias](API_GetBotAlias.md)操作找到日誌的日誌串流字首。

使用者表達用語的日誌項目位於多個日誌串流中。對話中的表達用語在其中一個日誌串流中具有指定前綴的項目。日誌串流中的項目包含下列資訊。

```
{
   "messageVersion": "1.0",
   "botName": "bot name",
   "botAlias": "bot alias",
   "botVersion": "bot version",
   "inputTranscript": "text used to process the request",
   "botResponse": "response from the bot",
   "intent": "matched intent",
   "nluIntentConfidence": "number",
   "slots": {
       "slot name": "slot value",
       "slot name": null,
       "slot name": "slot value"
       ...
   },
   "alternativeIntents": [
       {
           "name": "intent name",
           "nluIntentConfidence": "number",
           "slots": {
               "slot name": slot value,
               "slot name": null,
               "slot name": slot value
               ...
           }
       },
       {
           "name": "intent name",
           "nluIntentConfidence": number,
           "slots": {}
       }
   ],
   "developerOverride": "true" | "false",
   "missedUtterance": true | false,
   "inputDialogMode": "Text" | "Speech",
   "requestId": "request ID",
   "s3PathForAudio": "S3 path to audio file",
   "userId": "user ID",
   "sessionId": "session ID",
   "sentimentResponse": {
       "sentimentScore": "{Positive: number, Negative: number, Neutral: number, Mixed: number}",
       "sentimentLabel": "Positive" | "Negative" | "Neutral" | "Mixed"
   },
   "slotToElicit": "slot name",
   "dialogState": "ElicitIntent" | "ConfirmIntent" | "ElicitSlot" | "Fulfilled" | "ReadyForFulfillment" | "Failed",
   "responseCard": {
       "genericAttachments": [
           ...
       ],
       "contentType": "application/vnd.amazonaws.card.generic",
       "version": 1
    },
   "locale": "locale",
   "timestamp": "ISO 8601 UTC timestamp",
   "kendraResponse": {
      "totalNumberOfResults": number,
      "resultItems": [
          {
              "id": "query ID",
              "type": "DOCUMENT" | "QUESTION_ANSWER" | "ANSWER",
              "additionalAttributes": [
                  {
                     ...
                  }
              ],
              "documentId": "document ID",
              "documentTitle": {
                  "text": "title",
                  "highlights": null
              },
              "documentExcerpt": {
                  "text": "text",
                  "highlights": [
                      {
                          "beginOffset": number,
                          "endOffset": number,
                          "topAnswer": true | false
                      }
                  ]
              },
              "documentURI": "URI",
              "documentAttributes": []
          }  
      ],
      "facetResults": [],
      "sdkResponseMetadata": {
          "requestId": "request ID"
      },
      "sdkHttpMetadata": {
          "httpHeaders": {
              "Content-Length": "number",
              "Content-Type": "application/x-amz-json-1.1",
              "Date": "date and time",
              "x-amzn-RequestId": "request ID"
          },
          "httpStatusCode": 200
      },
      "queryId": "query ID"
   },
   "sessionAttributes": {
       "attribute name": "attribute value"
       ...
    },
   "requestAttributes": {
       "attribute name": "attribute value"
       ...
    }
}
```

日誌項目的內容取決於交易的結果以及機器人和請求的組態。
+ 若 `missedUtterance` 欄位是 `true`，則 `intent`、`slots` 和 `slotToElicit` 不會顯示在輸入中。
+ 如果音訊日誌已停用或 `inputDialogMode` 欄位是 `Text`，則 `s3PathForAudio` 欄位不會出現。
+ 只有在您為機器人定義回應卡片時，才會顯示 `responseCard` 欄位。
+ 只有在請求中指定了請求屬性時，才會顯示 `requestAttributes` 對映。
+ 只有在 `AMAZON.KendraSearchIntent`提出搜尋 Amazon Kendra 索引的請求時，才會出現 `kendraResponse` 欄位。
+ 在機器人的 Lambda 函數中指定替代意圖時， `developerOverride` 欄位為 true。
+ 只有在請求中指定了工作階段屬性時，才會顯示 `sessionAttributes` 映射。
+ 只有在您設定機器人傳回情緒值時，才會顯示 `sentimentResponse` 映射。

**注意**  
即使 `messageVersion` 中沒有對應的變更，輸入格式也可能變更。如果出現新欄位，您的程式碼不應擲出錯誤。

您必須設定角色和政策，才能讓 Amazon Lex 寫入 CloudWatch Logs。如需更多資訊，請參閱[對話日誌的 IAM 政策](conversation-logs-policies.md)。

# 在 Amazon S3 中存取音訊日誌
<a name="conversation-logs-s3"></a>

Amazon Lex 會將對話的音訊日誌存放在 S3 儲存貯體中。

**使用主控台存取音訊日誌**

1. 開啟 Amazon Lex 主控台 https：//[https://console.aws.amazon.com/lex](https://console.aws.amazon.com/lex)。

1. 從清單中選擇一個機器人。

1. 選擇 **Settings (設定)** 標籤，然後從左側功能表中選擇 **Conversation logs (對話日誌)**。

1. 選擇**音訊日誌**下方的連結，以在 Amazon S3 主控台中存取別名的日誌。

您也可以使用 Amazon S3 主控台或 API 來存取音訊日誌。您可以在 Amazon Lex 主控台或`GetBotAlias`操作回應的 `resourcePrefix` 欄位中看到音訊檔案的 S3 物件金鑰字首。

# 使用 CloudWatch 指標監控對話日誌狀態
<a name="conversation-logs-monitoring"></a>

使用 Amazon CloudWatch 監控對話日誌的交付指標。您可以在指標上設定警示，以便在記錄時注意到應該發生的問題。

Amazon Lex 在 `AWS/Lex` 命名空間中為對話日誌提供四個指標：
+ `ConversationLogsAudioDeliverySuccess`
+ `ConversationLogsAudioDeliveryFailure`
+ `ConversationLogsTextDeliverySuccess`
+ `ConversationLogsTextDeliveryFailure`

如需詳細資訊，請參閱[對話日誌的 CloudWatch 指標](monitoring-aws-lex-cloudwatch.md#cloudwatch-metrics-for-logging)。

成功指標顯示 Amazon Lex 已成功將您的音訊或文字日誌寫入其目的地。

失敗指標顯示 Amazon Lex 無法將音訊或文字日誌交付至指定的目的地。通常，這是組態錯誤。當您的失敗指標高於零時，請檢查下列情況：
+ 確定 Amazon Lex 是 IAM 角色的受信任實體。
+ 對於文字記錄，請確定 CloudWatch Logs 日誌群組存在。對於音訊記錄，確定 S3 儲存貯體存在。
+ 確定 Amazon Lex 用來存取 CloudWatch Logs 日誌群組或 S3 儲存貯體的 IAM 角色具有日誌群組或儲存貯體的寫入許可。
+ 請確定 S3 儲存貯體與 Amazon Lex 機器人位於相同的區域，且屬於您的帳戶。
+ 如果您使用 AWS KMS 金鑰進行 S3 加密，請確定沒有防止 Amazon Lex 使用您的金鑰的政策，並確保您提供的 IAM 角色具有必要的 AWS KMS 許可。如需詳細資訊，請參閱[對話日誌的 IAM 政策](conversation-logs-policies.md)。