

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 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 は、すべてのログストリームをインデックスごとに 1 つのロググループに保存します。Amazon Kendra は、インデックスの作成時にロググループを作成します。ロググループ識別子は常に「aws/kendra/」で始まります。
+ ログストリーム - Amazon Kendra は、実行するインデックス同期ジョブごとに、ロググループに新しいデータソースログストリームを作成します。また、ストリームが約 500 エントリに達すると、新しいドキュメントログストリームが作成されます。
+ ログエントリ - Amazon Kendra は、ドキュメントのインデックス作成時にログストリームにログエントリを作成します。各エントリは、ドキュメントの処理または発生したエラーに関する情報を提供します。

CloudWatch Logs の使用方法の詳細については、*Amazon CloudWatch Logs ユーザーガイド*の [Amazon CloudWatch Logs とは](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)を参照してください。

Amazon Kendra は 2 つのタイプのログストリームを作成します。
+ [データソースログストリーム](#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
```

同期ジョブの実行ごとに、新しいログストリームが作成されます。

データソースログストリームに発行されるログメッセージには 3 つのタイプがあります。
+ インデックス作成の送信に失敗したドキュメントのログメッセージ。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. Amazon Kendra コンソール ([https://console.aws.amazon.com/kendra/](https://console.aws.amazon.com/kendra/)) を開きます。

1. 左側のナビゲーションメニューから、**[データ管理]** で **[データソース]** を選択して、データソースを選択します。

1. データソースの概要ページから、下にスクロールして **[同期履歴]** タブを選択します。

1. **[同期実行履歴]** から **[アクション]** を選択します。

1. **[アクション]** から **[レポートの表示]** を選択します。レポートにアクセスできる CloudWatch コンソールにリダイレクトされます。

**注記**  
同期実行履歴は、アタッチされた ACL やメタデータを含め、Amazon Kendra がサポートするすべてのコネクタで、取り込み中にドキュメントのインデックスが正常に作成されたかどうかを記録します。

**Amazon S3 コネクタを使用している場合**

CloudWatch でドキュメントレベルの同期実行履歴レポートを作成することに加えて、Amazon S3 データソース内の各ドキュメントの同期履歴レポートを生成し、 Amazon S3 バケットにコピーできます。このプロセス中、データは AWS KMS キーを使用して暗号化され、ユーザーのみが表示できます。報告されたドキュメントのステータスは、**[失敗]**、**[完了]**、または **[成功 (エラーあり)]** のいずれかになります。Amazon S3 の同期ステータスレポートを生成する前に、次の操作を行う必要があります。
+  Amazon S3 アクセスポリシーに次の Amazon Kendra サービスプリンシパルを追加する
+ へのアクセス許可を持つ Amazon S3 バケットを作成する Amazon Kendra

コンソールを使用して Amazon S3 の同期履歴レポートを生成するには、**[データソースの詳細]** ページの **[同期履歴レポート – *オプション*]** セクションで **[レポートを生成]** オプションを有効にします。次に、 Amazon S3 バケットの場所を入力し、使用可能な設定オプションから選択します。レポート生成を有効にすると、次回の同期からレポートが生成されます。

 Amazon S3 バケットを削除すると、ログデータが失われ、新しい同期レポートを保存する新しいバケットを設定する必要があります。

**注記**  
同期履歴レポートでは、Amazon S3 コネクタがデータを正常にクロールして取り込んだかどうかに関する情報のみが提供されます。