

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

# 使用 Amazon CloudWatch Logs 監控 Amazon Kendra
<a name="cloudwatch-logs"></a>

Amazon Kendra 使用 Amazon CloudWatch Logs 讓您深入了解資料來源的操作。Amazon Kendra 會記錄文件編製索引時的處理程序詳細資訊。它會記錄文件編製索引時，從資料來源發生的錯誤。您可以使用 CloudWatch Logs 來監控、存放和存取日誌檔案。

CloudWatch Logs 會將日誌事件存放在屬於日誌群組的日誌串流中。Amazon Kendra 使用這些功能，如下所示：
+ 日誌群組：Amazon Kendra 會將每個索引的所有日誌串流存放在單一日誌群組中。建立索引時，Amazon Kendra 會建立日誌群組。日誌群組識別符一律以 "aws/kendra/" 開頭。
+ 日誌串流 - Amazon Kendra 會在日誌群組中為您執行的每個索引同步任務建立新的資料來源日誌串流。當串流達到大約 500 個項目時，也會建立新的文件日誌串流。
+ 日誌項目：Amazon Kendra 在將文件編製索引時，會在日誌串流中建立日誌項目。每個項目都會提供有關處理文件或任何遇到錯誤的資訊。

如需使用 CloudWatch Logs 的詳細資訊，請參閱《[Amazon Cloud Watch Logs 使用者指南》中的什麼是](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) *Amazon Cloud Watch Logs*。

Amazon Kendra 建立兩種類型的日誌串流：
+ [資料來源日誌串流](#data-source-log-stream)
+ [文件日誌串流](#document-log-stream)

## 資料來源日誌串流
<a name="data-source-log-stream"></a>

資料來源日誌串流會發佈索引同步任務的相關項目。每個同步任務都會建立新的日誌串流，用來發佈項目。日誌串流名稱為：

```
{{data source id}}/{{YYYY}}-{{MM}}-{{DD}}-{{HH}}/{{data source sync job ID}}
```

系統會為每個同步任務執行建立新的日誌串流。

發佈至資料來源日誌串流的日誌訊息有三種類型：
+ 無法傳送用於索引之文件的日誌訊息。以下是 S3 資料來源中文件的此訊息範例：

  ```
  {
      "DocumentId": "{{document ID}}",
      "S3Path": "s3://{{bucket}}/{{prefix}}/{{object}}",
      "Message": "Failed to ingest document via BatchPutDocument.",
      "ErrorCode": "InvalidRequest",
      "ErrorMessage": "No document metadata configuration found for document attribute key  city."
  }
  ```
+ 無法傳送要刪除之文件的日誌訊息。以下是此訊息的範例：

  ```
  {
      "DocumentId": "{{document ID}}",
      "Message": "Failed to delete document via BatchDeleteDocument.",
      "ErrorCode": "InvalidRequest",
      "ErrorMessage": "Document can't be deleted because it doesn't exist." 
  }
  ```
+ 找到 Amazon S3 儲存貯體中文件的無效中繼資料檔案時的日誌訊息。以下是此訊息的範例。

  ```
  {
      "Message": "Found invalid metadata file {{bucket}}/{{prefix}}/{{filename}}.{{extension}}.metadata.json."
  }
  ```
+ 對於 SharePoint 和資料庫連接器，Amazon Kendra 只會在文件無法編製索引時將訊息寫入日誌串流。以下是 Amazon Kendra 記錄的錯誤訊息範例。

  ```
  { 
      "DocumentID": "{{document ID}}", 
      "IndexID": "{{index ID}}", 
      "SourceURI": "", 
      "CrawlStatus": "FAILED", 
      "ErrorCode": "403", 
      "ErrorMessage": "Access Denied", 
      "DataSourceErrorCode": "403"
  }
  ```

## 文件日誌串流
<a name="document-log-stream"></a>

Amazon Kendra 會在文件編製索引時記錄處理文件的相關資訊。它會為存放在 Amazon S3 資料來源中的文件記錄一組訊息。它只會針對存放在 Microsoft SharePoint 或資料庫資料來源中的文件記錄錯誤。

如果使用 [BatchPutDocument](https://docs.aws.amazon.com/kendra/latest/APIReference/API_BatchPutDocument.html) 操作將文件新增至索引，則日誌串流的名稱如下：

```
{{YYYY}}-{{MM}}-{{DD}}-{{HH}}/{{UUID}}
```

如果使用資料來源將文件新增至索引，則日誌串流的名稱如下：

```
{{dataSourceId}}/{{YYYY}}-{{MM}}-{{DD}}-{{HH}}/{{UUID}}
```

每個日誌串流最多包含 500 則訊息。

如果對文件編製索引失敗，此訊息會輸出到日誌串流：

```
{
    "DocumentId": "{{document ID}}",
    "IndexName": "{{index name}}",
    "IndexId": "{{index ID}}"
    "SourceURI": "{{source URI}}"
    "IndexingStatus": "{{DocumentFailedToIndex}}",
    "ErrorCode": "400 | 500",
    "ErrorMessage": "{{message}}"
}
```

## 檢視同步任務的 Amazon Kendra 指標
<a name="sync-run-history"></a>

透過選取**檢視報告**，您可在 CloudWatch 中檢視資料來源同步任務的文件層級同步執行歷史記錄報告。同步執行歷史記錄報告將列出同步任務中各文件的進度與狀態詳細資訊。報告會顯示各文件在網路爬取、同步與編索階段的狀態，包括成功、失敗或遭略過。您也可以查看與失敗或略過文件相關的錯誤訊息。若報告未顯示正在執行的同步任務結果，則相關日誌可能尚未產生。同步程序中事件發生後資料會陸續寫入報告，請稍後再回來查看。

若要查看同步執行歷史記錄報告，請依下列步驟操作：

1. 開啟位於 https：//[https://console.aws.amazon.com/kendra/](https://console.aws.amazon.com/kendra/) 的 Amazon Kendra 主控台。

1. 在左側導覽選單的**資料管理**下，選擇**資料來源**，然後選擇您的資料來源。

1. 在資料來源摘要頁面中向下捲動，並選取**同步歷史記錄**標籤。

1. 在**同步執行歷史記錄**中選取**動作**。

1. 在**動作**中選取**檢視報告**。系統會將您重新導向至 CloudWatch 主控台，您可在該處查看相關報告。

**注意**  
如果文件在擷取期間成功編製索引，包括連接 ACLs 和中繼資料，則同步執行歷史記錄會記錄所有 Amazon Kendra 支援的連接器。

**如果您使用的是 Amazon S3 連接器：**

除了在 CloudWatch 中擷取文件層級同步執行歷史記錄報告之外，您還可以為 Amazon S3 資料來源中的每個文件產生同步歷史記錄報告，並將其複製到 Amazon S3 儲存貯體。在此過程中，您的資料會使用 AWS KMS 金鑰加密，而且只能由您檢視。報告的文件狀態可以是下列其中一項：**失敗**、**已完成**或**成功並發生錯誤**。您必須先執行下列動作，才能產生 Amazon S3 的同步狀態報告：
+ 將下列 Amazon Kendra 服務主體新增至您的 Amazon S3 存取政策
+ 建立具有 存取許可的 儲存 Amazon S3 貯體 Amazon Kendra

如果您使用 主控台，若要產生 Amazon S3 的同步歷史記錄報告，請選擇**從資料來源詳細資訊**頁面上的**同步歷史記錄報告 – *選用***區段中啟用**產生**報告選項。然後，輸入儲存 Amazon S3 貯體位置，然後從可用的組態選項中進行選擇。啟用產生報告後，報告會從下一次同步產生。

如果您刪除儲存 Amazon S3 貯體，您會遺失日誌資料，而且必須設定新的儲存貯體來存放新的同步報告。

**注意**  
同步歷史記錄報告僅提供有關 Amazon S3 連接器是否成功編目和擷取資料的資訊。