Amazon Kendra の Web Crawler の Depth の動作を確認する

# はじめに

Amazon Kendra はコネクターが提供され、様々なデータソースを検索対象に含めることができます。このコネクタ―の一つに、[Web Crawler](https://docs.aws.amazon.com/kendra/latest/dg/data-source-web-crawler.html) がありインターネットに公開されている Web ページや、VPC 内から接続可能なイントラサイトなどを対象にできます。

Web Crawler コネクターの動作が不明なところがあったので、検証を行う記事です。特に **Crawl depth** パラメーターの意味がわからなかったので、サンプル Web サイトを準備して動作確認をします。



# 結論

検証結果の結論を記載します。

Web Crawler v2 コネクターにある **Crawl depth** の値は、指定した URL の中でリンクされている「別のページ」をどれくらい辿るのか「深さ」を指定するパラメーターだという検証結果でした。

具体的には、次のような結果でした。

- **Crawl depth を 0 にする** : 指定した URL のデータは Index に追加するが、URL 内に記載される別ページへのリンクは辿らない。あくまで指定した URL のみ Kendra に追加したい場合に利用する。
- **Crawl depth を 1 にする** : 指定した URL のデータは Index に追加する。また、URL 内に記載されている別ページへのリンクは、1 段階まで辿ってデータを追加する。



この検証内容を確認した手順を以下に残します。



# 事前準備 : Kendra Index を 2 つ作成

2 つの Kendra Index を作成

- 名前 : test-depth0
- 名前 : test-depth1



# 事前準備 : クローラー対象のサンプル Web サイト作成

Web Crawler のクローラー対象とするサンプルサイトを作成します。画像に書かれている通り、外部リンクを用意しているサンプルサイトです。

次のリンクの条件を用意しています。

- 指定したドメインと同じページ
- 指定したドメインと同じ PDF ファイル
- 指定したとメインと異なる、外部ページ
- 指定したとメインと異なる、外部 PDF ファイル

![image-20231119154335770.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/09c8ac65-2574-953e-29ea-ab936985af46.png)



なお、「内部ページ1」では、EC2 の説明を掲載しています。

![image-20231119160405052.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/514999d5-d0ec-1119-aad8-36168d26dbf8.png)



「内部ページ2」では、S3 の説明を掲載しています。

![image-20231119160414644.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/92af30d4-cbe5-658c-f6ef-4c676badda02.png)



「内部PDF1」では、次のシンプルな PDF です。

![image-20231119160437775.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/e02e998c-8f96-1017-9414-a36681e15ed2.png)



外部リンクは、次の 3 つの URL を指定しています。

```
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Welcome.html
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/welcome.html
https://d1.awsstatic.com/training-and-certification/Docs%20-%20Cloud%20Practitioner/AWS%20Certified%20Cloud%20Practitioner_Exam_Guide_v1.4_FINAL_JA.pdf
```



# Crawl depth 0 で Sync 

Crawl depth 0 で Sync をしていきます。

対象の Kendra Index を指定

![image-20231119133010994.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/d5686dee-50a5-8205-ce55-696d77beee6c.png)



Web Crawler v2.0 を指定

![image-20231119133808172.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/850bb635-2b02-d2df-94cd-9fd9abf79d54.png)



適当に名前を指定。言語は Japanese を指定。

![image-20231119133857306.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/a8657b7d-4c85-2d42-daa9-239349367c35.png)



Source URLs には、トップページの URL を指定します。

![image-20231119133956254.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/a65c9f84-6b4a-de4e-3874-07aa0dc144b1.png)



次のパラメータを入れます。

- Sync domains only : 指定したドメインのみを対象にする
- Crawl depth 0 : 指定したページ内のリンクは辿らない指定
- Include the files that has links to web pages : オンにするが、Crawl depth が 0 なので実質意味がない

![image-20231119134215528.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/d8abfd5f-4664-6f9f-815a-56294d19fe5d.png)



とりあえず全部チェックオンをしてみます。

![image-20231119134313662.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/abadd0e3-b40b-d03a-6b5a-6c6427532d53.png)



Add

![image-20231119134323531.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/a8cbde81-c2af-4849-b947-b953e971f820.png)



Sync now を押します。

![image-20231119134441014.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/2542a06d-fdc4-3bb0-b9e5-a3c1f3bbccdf.png)



一定時間後に Sync history で Details をクリックできるようになります。ログを検索できるので、これを開きます。

![image-20231119141216564.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/0d5831e2-5b68-63a8-8fb5-fdb0e7b2ecb0.png)



対象のログを検索して、csv にdownloadすることができます。

![image-20231119141303555.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/314a353b-60c1-495f-6a23-f1a8b1744b27.png)



ログファイルはこんな感じです。

```
@ingestionTime,DocumentId,SourceId,Message,@timestamp,AwsAccountId,IndexId,LogLevel,ErrorCode,ErrorMessage,message
2023-11-19 04:55:39.244,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Deleting stale documents.,2023-11-19 04:55:39.237,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:39.244,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,The connector has successfully completed syncing documents.,2023-11-19 04:55:39.237,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:39.244,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Number of documents successfully indexed from current batch in index:1,2023-11-19 04:55:39.236,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:39.244,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Number of documents failed to index from current batch in index: 0,2023-11-19 04:55:39.236,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:37.214,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[54b9f0ae-4051-42e8-bb6e-66755ddf1370] - Successfully crawled webpages and attachments.,2023-11-19 04:55:37.176,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:37.214,https://d3f6kbo9gfuo2p.cloudfront.net/,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Attempting to fetch item from repository,2023-11-19 04:55:37.176,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:37.214,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[4fc8c3c3-9d17-4343-9aa3-2852c0e9a18a] - Fetching metadata for document id [https://d3f6kbo9gfuo2p.cloudfront.net/] of [WEBPAGE] entity.,2023-11-19 04:55:37.176,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:37.214,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[96a4a14c-eb99-486a-9d95-e75a7551b314] - [https://d3f6kbo9gfuo2p.cloudfront.net/] Metadata retrieved successfully for WEB_PAGE entity from URL [https://d3f6kbo9gfuo2p.cloudfront.net/].,2023-11-19 04:55:37.176,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:55:37.214,https://d3f6kbo9gfuo2p.cloudfront.net/,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Indexing document to index.,2023-11-19 04:55:37.176,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:37.104,https://d3f6kbo9gfuo2p.cloudfront.net/,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Adding item to index,2023-11-19 04:50:37.099,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:37.104,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[34a02d0d-fe21-4ae5-a6d7-14148cde4bfd] - Crawling for the URL https://d3f6kbo9gfuo2p.cloudfront.net/ has been completed successfully.,2023-11-19 04:50:37.097,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:35.069,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[b901147d-c5b0-4a73-b882-5a634d717376] - Connection successfully established.,2023-11-19 04:50:35.064,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:35.069,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Invoked FORCED_FULL_CRAWL syncMode.,2023-11-19 04:50:35.064,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:35.069,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[10b7cb46-5963-47f9-a301-e9590349a111] - Crawling has started in full crawl mode.,2023-11-19 04:50:35.064,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:35.069,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[d734df85-1312-4de7-998f-e1ea6975f49f] - Crawling has been started.,2023-11-19 04:50:35.064,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:35.069,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[00bb532c-d41d-428b-9bbb-6a55ec7879c5] - Crawling started for the URL - [https://d3f6kbo9gfuo2p.cloudfront.net/],2023-11-19 04:50:35.064,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:25.027,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[09f11dc2-f72c-4c0a-9829-be8e0c66e57f] - Testing connection with Web Crawler configuration,2023-11-19 04:50:25.016,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:25.027,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Received connector configure request for connector.,2023-11-19 04:50:25.014,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:25.027,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Resetting and cleaning up any existing states in repository client.,2023-11-19 04:50:25.014,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:25.027,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,[4b794bf5-6eee-48a1-be3a-0b7af5c23344] - Reset and initialization of connector.,2023-11-19 04:50:25.014,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
2023-11-19 04:50:25.027,,e604d9df-9ff7-4ed5-90ff-6da15615ac79,Starting connector.,2023-11-19 04:50:25.014,xxxxxxxxxxxx,48cb9a15-a6ea-4c06-b8f1-db797ddaa85e,Info,,,
```



クローラー対象として選ばれた URL を検索するクエリー例です。トップページの URL がクローリングの対象になっています。**Crawl depth を 0 に指定したので、他のページのリンクはデータ追加の対象にはなっていません。**

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /Crawling for the URL/
```

![image-20231119142800891.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/ea2ee4fe-063e-c008-914b-f8e3a0437a0d.png)



クローリングが成功した URL を検索するクエリー例

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /has been completed successfully/
```

![image-20231119142821784.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/015f4fa8-dd46-5614-5c26-690e94a00864.png)



Kendra にデータが追加された Document の数がわかるクエリー

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /Number of documents (successfully indexed|failed to index) from current batch in index/
```

以下の結果がわかる

- 成功 : 1 個
- 失敗 : 0 個

![image-20231119143200027.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/db19ed27-14e4-dc24-1f4a-cc9358d1aa9e.png)



実際に検索用の Search Console を開いてみます。「AWS」のワードはトップページに記載しているので引っかかります。

![image-20231119144302135.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/d1689dd4-16fe-e32c-b434-0b6c213dce3e.png)



「EC2」を解説している別のページは検索の対象にはなりません。

![image-20231119144338924.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/8fa3d1e0-1c98-6b7d-20ec-1e8933ea7ef6.png)



「S3」も検索対象外です。

![image-20231119144349835.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/fbd366dc-9d95-aa7d-976a-7282c20f5f40.png)



実際に AWS CLI 上でクエリーコマンドを実行して、どのようなデータが含まれているのか確認ができます。次のコマンドを実行します。

```
aws kendra query --index-id "48cb9a15-a6ea-4c06-b8f1-db797ddaa85e" \
--attribute-filter '{
  "EqualsTo":{
    "Key": "_language_code",
    "Value": {"StringValue": "ja"}
  }
}' \
--sorting-configuration '{
  "DocumentAttributeKey": "_created_at",
  "SortOrder": "DESC"
}' \
--page-size 100
```



実行結果

- トップページしか格納されていない様子がわかる。Crawl depth 0 を指定しているので、想定通りの結果。
- DocumentExcerpt で返ってくる値は、Web ページの全てが表示されているわけではなく、一部が抜粋されている。ただ、実際に Kendra の中にはすべてのデータが格納されている。

```
{
    "QueryId": "a13a903b-cc04-4dc4-acfc-7c78ff990c21",
    "ResultItems": [
        {
            "Id": "a13a903b-cc04-4dc4-acfc-7c78ff990c21-018584c2-5dd4-4c74-a6f2-938184eacfdd",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/",
            "DocumentTitle": {
                "Text": "トップページ",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "AWSの特徴は以下の通りです： 幅広いサービス範囲：AWSはコンピューティング、ストレージ、データベース、機械学習、人工知能、IoT（Internet of Things）、セキュリティ、モビリティなど、
多岐にわたるサービスを提供しています。 スケーラビリティと柔軟性：顧客は必要に応じてリソースを増減でき、大規模なインフラストラクチャから小規模なプロジェクトまで幅広いニーズに対応できます。 コスト効率：従量課金制のため、使用した分だけ料金を支払います。高額なハードウェアの購入やメンテナンスの必要がなく、初期投資が抑えられます。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "トップページ"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2146
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeIRZOksoQAy64WkyI6mF3uIAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREF2SWVqdmltY0dFMUFOQ0lxa3NXekhKVi93TkpjNTBTNzBoS3BSWU4zWWtqTDVjU2hpbGIvZ0xXeXNPMlRHNmt6dz09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mAWJWu7-epr1XtF1LE0TlvCQAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAzcpUBfPr5hqNcD79QCARCAO4oh7luXhPaa_s_9qrPhxx4xdHRVB65amwm_p6r1e-FUxe-vUUkHX3dFA81a4PtFkEW79eJtA0lO8oqwAgAAAAAMAAAQAAAAAAAAAAAAAAAAAB-k3pFtMSLhxkjRsIAV-aD_____AAAAAQAAAAAAAAAAAAAAAQAAAXZVpHkQqtWhYZ0Bdm_GW9l6_3uYKJghMFyxrehyhkJ29OGxISvKezXjcOK1ULCvBQ8Q4UYr8B5-hsuC2XNur_dK8HDBOCxyaGVGZ5A4mNaRE-nglZ8y1DIkVlf51b_O0xxTu3RSkTocrmTslW91KgPnx0SXcC1Nk8BiJhh2njQgQiV0gfzH9jSwondpEOngJhKs6WFgcWF3a3Sg25sKoeZMmCJDugc4L7bcGShLmsBwV9C6bxRTdSAyxwrgDh_rpyp74p1eFYupUyxOl7jnRH2qBIvBJFUnj84usoC7bfwJ5mqoPw9HPOZx4SU46yDr0H-ZtaVUakVoSQAEAY6N3Wm4MFBjB_E5OuSwEzelXxYSnPBt8WDk
EOMKNnqAju24Jko1jGV5QgnjW_DSubFTCryUuHGxHiUTaIUqOc97oIO8e-Vz-M_uAanabsYfIhCB6zO9_rYg_EbXgGQrI0Bv6MRwkwAST42GsTHLca97Z-FX-gXyp2_G5HpXcx6ODrf4snyvsvkrxusAZzBlAjBODbA0pQtdlIXK_8tUpNtVMozIcIi21rs26kSud3c5FfPtc_1DlHF65CJgpbvVzjoCMQC1C3BABMlpHA4O3c7e-uMVudj2pYxXR3NelYKqMnWdMVW2vmpfMS59l--nw_HKanA=.a13a903b-cc04-4dc4-acfc-7c78ff990c21-018584c2-5dd4-4c74-a6f2-938184eacfdd"
        }
    ],
    "FacetResults": [],
    "TotalNumberOfResults": 1
}
```





# Crawl depth 1 で Sync

次に、Crawl depth 1 で Sync します。対象の Kendra Index を指定

![image-20231119134505270.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/b7693cc3-1ff9-3276-4d5e-86e31d0e0e46.png)



Web Crawler v2.0 を指定

![image-20231119134538327.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/2f543787-05d2-71cb-b065-09ed67e7e501.png)



適当に名前を指定。言語は Japanese を指定。

![image-20231119134617247.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/2979df27-192a-4570-c144-b42f7e53c2be.png)



Source URLs には、トップページの URL を指定します。

![image-20231119134646632.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/505a77eb-4456-b99e-671b-99257009f6d2.png)



次のパラメータを入れます。

- Sync domains only : 指定したドメインのみを対象にする
- **Crawl depth 1 : 指定したページ内のリンクを 1 つだけ辿る指定**
- Include the files that has links to web pages : オンにしてみる (が、この記事の環境では、PDF は Kendra に取り込まれなかった)

![image-20231119134755890.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/51039e06-385a-c5fc-06bb-898afea680bb.png)



Sync now を押します。

![image-20231119134930471.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/5769f8de-5498-816b-387d-ee0dcfe0568b.png)



CloudWatch Logs で確認できるログです。いくつか詳細を見ていきます。

```
@ingestionTime,DocumentId,SourceId,Message,@timestamp,AwsAccountId,IndexId,LogLevel,ErrorCode,ErrorMessage,message
2023-11-19 05:01:15.700,https://d3f6kbo9gfuo2p.cloudfront.net/,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Indexing document to index.,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:15.700,https://d3f6kbo9gfuo2p.cloudfront.net/page02.html,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Indexing document to index.,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:15.700,https://d3f6kbo9gfuo2p.cloudfront.net/page01.html,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Indexing document to index.,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:15.700,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Number of documents successfully indexed from current batch in index:3,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:15.700,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Number of documents failed to index from current batch in index: 0,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:15.700,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Deleting stale documents.,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:15.700,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,The connector has successfully completed syncing documents.,2023-11-19 05:01:15.693,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,https://d3f6kbo9gfuo2p.cloudfront.net/page02.html,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Attempting to fetch item from repository,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,https://d3f6kbo9gfuo2p.cloudfront.net/,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Attempting to fetch item from repository,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[ca82395f-d389-4eb3-8dfd-90a5dc228090] - Fetching metadata for document id [https://d3f6kbo9gfuo2p.cloudfront.net/page01.html] of [WEBPAGE] entity.,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[c3b98168-016a-4c62-8ceb-f698cb1a5c48] - Fetching metadata for document id [https://d3f6kbo9gfuo2p.cloudfront.net/page02.html] of [WEBPAGE] entity.,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[a436580f-0bed-4549-b675-558240cf29ab] - Fetching metadata for document id [https://d3f6kbo9gfuo2p.cloudfront.net/] of [WEBPAGE] entity.,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[9c97591e-1d4b-4a5a-953c-946a8ee4e898] - [https://d3f6kbo9gfuo2p.cloudfront.net/] Metadata retrieved successfully for WEB_PAGE entity from URL [https://d3f6kbo9gfuo2p.cloudfront.net/].,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[0e36b5c0-70a2-4770-bd5c-d3b7d7e6c71e] - [https://d3f6kbo9gfuo2p.cloudfront.net/page01.html] Metadata retrieved successfully for WEB_PAGE entity from URL [https://d3f6kbo9gfuo2p.cloudfront.net/page01.html].,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[955ea618-f7fa-41dd-905b-8f4f1304f734] - [https://d3f6kbo9gfuo2p.cloudfront.net/page02.html] Metadata retrieved successfully for WEB_PAGE entity from URL [https://d3f6kbo9gfuo2p.cloudfront.net/page02.html].,2023-11-19 05:01:13.625,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[7ee70eb9-5e66-48d8-90c7-7f067b6fffed] - Successfully crawled webpages and attachments.,2023-11-19 05:01:13.624,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 05:01:13.670,https://d3f6kbo9gfuo2p.cloudfront.net/page01.html,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Attempting to fetch item from repository,2023-11-19 05:01:13.624,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:13.515,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[5902630d-50c4-4f47-96d4-beb69695be6d] - Crawling for the URL https://d3f6kbo9gfuo2p.cloudfront.net/pdf01.pdf has been completed successfully.,2023-11-19 04:56:13.509,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:13.515,https://d3f6kbo9gfuo2p.cloudfront.net/page01.html,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Adding item to index,2023-11-19 04:56:13.509,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:13.515,https://d3f6kbo9gfuo2p.cloudfront.net/page02.html,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Adding item to index,2023-11-19 04:56:13.509,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:13.515,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[16bd07f1-bbf9-483c-b291-d882f20eb9d3] - Crawling for the URL https://d3f6kbo9gfuo2p.cloudfront.net/page01.html has been completed successfully.,2023-11-19 04:56:13.508,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:13.515,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[c249b34d-6d09-4cdc-8c49-37fc60164bbb] - Crawling for the URL https://d3f6kbo9gfuo2p.cloudfront.net/page02.html has been completed successfully.,2023-11-19 04:56:13.508,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[ff971e4b-6a27-4528-bbed-0a170da7aea8] - Crawling started for the URL - [https://d3f6kbo9gfuo2p.cloudfront.net/pdf01.pdf],2023-11-19 04:56:11.472,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[ef1a5905-ec81-49a3-9a2f-c004f9ac285e] - Crawling for the URL https://d3f6kbo9gfuo2p.cloudfront.net/ has been completed successfully.,2023-11-19 04:56:11.472,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,https://d3f6kbo9gfuo2p.cloudfront.net/,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Adding item to index,2023-11-19 04:56:11.471,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[b32ab1f2-c330-48f8-9104-1b5626bf35d2] - Connection successfully established.,2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Invoked FORCED_FULL_CRAWL syncMode.,2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[1c9f4d8e-251a-42d3-9389-aa48f4dfd034] - Crawling has started in full crawl mode.,2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[3426a577-5524-4279-9e52-abf73ca129dc] - Crawling has been started.,2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[4ebd563d-75a8-40cd-8485-2c72c16e5db3] - Crawling started for the URL - [https://d3f6kbo9gfuo2p.cloudfront.net/],2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[adde4b34-0376-4deb-ab30-7cca5ee771ad] - Crawling started for the URL - [https://d3f6kbo9gfuo2p.cloudfront.net/page02.html],2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:56:11.478,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[98caa829-243b-421f-bd5c-bb0da3b4efe6] - Crawling started for the URL - [https://d3f6kbo9gfuo2p.cloudfront.net/page01.html],2023-11-19 04:56:11.469,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:55:59.419,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[d311b6d0-64ff-4f79-8531-3c575d70e34a] - Testing connection with Web Crawler configuration,2023-11-19 04:55:59.402,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:55:59.419,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Received connector configure request for connector.,2023-11-19 04:55:59.400,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:55:59.419,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Resetting and cleaning up any existing states in repository client.,2023-11-19 04:55:59.400,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:55:59.419,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,[9b093e59-4adc-45c4-a06e-98945c5d8ee4] - Reset and initialization of connector.,2023-11-19 04:55:59.400,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
2023-11-19 04:55:59.419,,e41b8960-9eaf-4a1b-af92-312ec017a7e0,Starting connector.,2023-11-19 04:55:59.400,xxxxxxxxxxxx,22d42d77-a738-4385-852c-759bad160da0,Info,,,
```



クローラー対象の URL を検索するクエリーを実行します。すると、**Crawl depth 1 を指定しているので、トップページに掲載されているリンクが対象になりました。** なお、対象として同じドメインにしているので、外部のリンクは含まれていません。

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /Crawling for the URL/
```

![image-20231119142150511.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/3f1f902d-9d8f-fe5d-e661-c09047bf18c2.png)



クローリングが成功した内容を検索するクエリー例

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /has been completed successfully/
```

![image-20231119142644016.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/1d8a19bd-c467-eb55-a829-3fde6f0e3d2d.png)



追加が成功した Document の数です。

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /Number of documents (successfully indexed|failed to index) from current batch in index/
```

以下の結果がわかる。**PDF ファイルはクローリングだけは行われたが、Kendra にはデータが追加されなかった。**

- 成功 : 3 個
- 失敗 : 0 個

![image-20231119143240869.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/ec91d9fb-fde8-18bd-3fa7-78ed49d38b47.png)



「AWS」で検索すると、既にほかのページが Kendra に追加されていることがわかります。

![image-20231119144442443.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/f6c60d33-f89d-5026-b92a-4a5dfd83dfd3.png)



「EC2」の検索結果です。リンクしている「ページ1」が見えます。

![image-20231119144509236.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/cc921575-0488-8dc7-d7fb-7cf631822ad5.png)







「S3」の検索結果です。リンクしている「ページ2」が見えます。

![image-20231119144519013.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/93ea3c65-f879-5ea6-0f19-fdedd8cd60b2.png)



**PDF に記載されている EBS は出てきません**

![image-20231119144635509.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/cec0d206-9b24-9a39-f3e2-ff44a5d5b696.png)



AWS CLI でクエリーをしてみましょう

```
aws kendra query --index-id "22d42d77-a738-4385-852c-759bad160da0" \
--attribute-filter '{
  "EqualsTo":{
    "Key": "_language_code",
    "Value": {"StringValue": "ja"}
  }
}' \
--sorting-configuration '{
  "DocumentAttributeKey": "_created_at",
  "SortOrder": "DESC"
}' \
--page-size 100
```



実行結果

- トップページ、ページ1、ページ2 のデータが追加されている
- PDF、外部ドメインのリンクは対象外
- DocumentExcerpt で返ってくる値は、Web ページの全てが表示されているわけではなく、一部が抜粋されている。ただ、実際にはすべてのデータが格納されている。

```
{
    "QueryId": "909cdd80-fe40-45bd-9864-b695c85985c4",
    "ResultItems": [
        {
            "Id": "909cdd80-fe40-45bd-9864-b695c85985c4-776fa516-4609-4cc8-9eb2-c5cb14847b72",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/page01.html",
            "DocumentTitle": {
                "Text": "ページ1",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "EC2（Elastic Compute Cloud）は、Amazon Web Services（AWS）が提供するクラウドベースのコンピューティングサービスです。このサービスを利用することで、ユーザーは物理的なサーバーを購
入、設置、維持することなく、仮想マシン（インスタンスと呼ばれる）をオンデマンドで起動し、用途に応じてスケーリングすることができます。 EC2の主な特徴は以下の通りです： 柔軟性：さまざまな種類のインスタンス
が用意されており、CPU、メモリ、ストレージ、ネットワーク性能など、必要に応じて最適なリソース構成を選択できます。 スケーラビリティ：需要に基づいてリソースを簡単にスケールアップまたはスケールダウンできます。自動スケーリングを使用すれば、トラフィックの増減に応じて自動的にインスタンス数を調整することも可能です。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/page01.html",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "ページ1"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2149
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/page01.html"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMRBZiOBqzkYC5e1lBOb15oAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREEycGhkSDlSUGVQakUyc0xBR0gzTTUwemJSQzJPVXZaSC9WRERaSnZIMmxPeUpCZGVxTmNlODEwNFZLSnk4T2VYZz09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mAV2NyLMizEfnByHZPTTDupwAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAxP9VVidU6V9kGzXOgCARCAO5w1uCrTBNhJkFRz9NDvpNIDPp7F_i9exWdEYOe9jgGdRC9cRMXOYDQEGAvg_bGOcw5Z2Mbr8tDb7z0hAgAAAAAMAAAQAAAAAAAAAAAAAAAAAHfnkbHyzyN0VrU4Ko6mEjT_____AAAAAQAAAAAAAAAAAAAAAQAAAXZ_QVCpqC86PbjCIyZa1S_LCgq6pSNlk2NHzKtU3_qdG90gWytjk3cVj5bUrw4B9azHCvJC1zyG3kQUWqqPtmuBdiF5haiEuxknPDGen6-TalbiL4rBXA8tZKOdnhQzihUZTRFek6t08Pgbs_HYrjaKXlJv_4WnQ6Wv2ea9Gt
-2cTjVzndVWzYl_LklyUlVWZzRCdhArNstTtg_qZkxcFPD6NrufYYHpKCEY_tZcgvjK3I79KBBLzBUkSR1Rt8ZwwYnopMsA0jZGpaQYGgv4oSSVvdocY-XvxUmszjrzzqEA1ipDkKc2iuv16NiVz7VyiT-NEzMoiyGUTDyK8Nb9HA7Tc6RTVVKM-WF6gXP-yv-rSmntM4R0ouILmuQc8xCx8AWDWtRhzPc3dt5OE2cEAgNTZxFQ6q-aVwIQpBSwcyPJD0NJIQK6uFVmTdrnSXh5ViM8geYRtRzEobRB2qxVVm8OG6xgNRzjKmE3D6FcOnE3RDh18IofCgchhWNKIPtwRRhoHCIMbgAZzBlAjEA6lQxpipABkXVqZI6Zn7IDf3ElluOeBQoZ2IR3B7U-yi1Jof5VsCjbmU0JF1_G70-AjAUoFsD5e9vw3hTkg-8XYGSoUIFdLPU057P37nh8TX2HjD9jWxtR97l7MDFYHOPyTM=.909cdd80-fe40-45bd-9864-b695c85985c4-776fa516-4609-4cc8-9eb2-c5cb14847b72"
        },
        {
            "Id": "909cdd80-fe40-45bd-9864-b695c85985c4-eb6b6f8b-3849-4c5c-99d3-38eec8b410d9",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/page02.html",
            "DocumentTitle": {
                "Text": "ページ2",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "S3（Amazon Simple Storage Service）は、Amazon Web Services（AWS）が提供するオブジェクトストレージサービスです。このサービスを利用することで、ユーザーはインターネットを通じて大量のデータを安全かつ効率的に保存、取得、共有することができます。 S3の主な特徴は以下の通りです： 耐久性と可用性：データは複数の物理的な場所に跨って冗長的に保存され、高い耐久性と可用性を提供します。AWSは99.999999999%（11 9's）の耐久性を保証しています。 スケーラビリティ：ユーザーは任意の量のデータを保存でき、使用する分だけ料金を支払います。データ量が増えても自動的にスケールします。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/page02.html",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "ページ2"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2401
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/page02.html"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMRBZiOBqzkYC5e1lBOb15oAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREEycGhkSDlSUGVQakUyc0xBR0gzTTUwemJSQzJPVXZaSC9WRERaSnZIMmxPeUpCZGVxTmNlODEwNFZLSnk4T2VYZz09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mAV2NyLMizEfnByHZPTTDupwAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAxP9VVidU6V9kGzXOgCARCAO5w1uCrTBNhJkFRz9NDvpNIDPp7F_i9exWdEYOe9jgGdRC9cRMXOYDQEGAvg_bGOcw5Z2Mbr8tDb7z0hAgAAAAAMAAAQAAAAAAAAAAAAAAAAAHfnkbHyzyN0VrU4Ko6mEjT_____AAAAAQAAAAAAAAAAAAAAAQAAAXZ_QVCpqC86PbjCIyZa1S_LCgq6pSNlk2NHzKtU3_qdG90gWytjk3cVj5bUrw4B9azHCvJC1zyG3kQUWqqPtmuBdiF5haiEuxknPDGen6-TalbiL4rBXA8tZKOdnhQzihUZTRFek6t08Pgbs_HYrjaKXlJv_4WnQ6Wv2ea9Gt
-2cTjVzndVWzYl_LklyUlVWZzRCdhArNstTtg_qZkxcFPD6NrufYYHpKCEY_tZcgvjK3I79KBBLzBUkSR1Rt8ZwwYnopMsA0jZGpaQYGgv4oSSVvdocY-XvxUmszjrzzqEA1ipDkKc2iuv16NiVz7VyiT-NEzMoiyGUTDyK8Nb9HA7Tc6RTVVKM-WF6gXP-yv-rSmntM4R0ouILmuQc8xCx8AWDWtRhzPc3dt5OE2cEAgNTZxFQ6q-aVwIQpBSwcyPJD0NJIQK6uFVmTdrnSXh5ViM8geYRtRzEobRB2qxVVm8OG6xgNRzjKmE3D6FcOnE3RDh18IofCgchhWNKIPtwRRhoHCIMbgAZzBlAjEA6lQxpipABkXVqZI6Zn7IDf3ElluOeBQoZ2IR3B7U-yi1Jof5VsCjbmU0JF1_G70-AjAUoFsD5e9vw3hTkg-8XYGSoUIFdLPU057P37nh8TX2HjD9jWxtR97l7MDFYHOPyTM=.909cdd80-fe40-45bd-9864-b695c85985c4-eb6b6f8b-3849-4c5c-99d3-38eec8b410d9"
        },
        {
            "Id": "909cdd80-fe40-45bd-9864-b695c85985c4-f11bd433-f8e9-44ed-885b-e1072aea4ec8",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/",
            "DocumentTitle": {
                "Text": "トップページ",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "AWSの特徴は以下の通りです： 幅広いサービス範囲：AWSはコンピューティング、ストレージ、データベース、機械学習、人工知能、IoT（Internet of Things）、セキュリティ、モビリティなど、
多岐にわたるサービスを提供しています。 スケーラビリティと柔軟性：顧客は必要に応じてリソースを増減でき、大規模なインフラストラクチャから小規模なプロジェクトまで幅広いニーズに対応できます。 コスト効率：従量課金制のため、使用した分だけ料金を支払います。高額なハードウェアの購入やメンテナンスの必要がなく、初期投資が抑えられます。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "トップページ"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2146
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMRBZiOBqzkYC5e1lBOb15oAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREEycGhkSDlSUGVQakUyc0xBR0gzTTUwemJSQzJPVXZaSC9WRERaSnZIMmxPeUpCZGVxTmNlODEwNFZLSnk4T2VYZz09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mAV2NyLMizEfnByHZPTTDupwAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAxP9VVidU6V9kGzXOgCARCAO5w1uCrTBNhJkFRz9NDvpNIDPp7F_i9exWdEYOe9jgGdRC9cRMXOYDQEGAvg_bGOcw5Z2Mbr8tDb7z0hAgAAAAAMAAAQAAAAAAAAAAAAAAAAAHfnkbHyzyN0VrU4Ko6mEjT_____AAAAAQAAAAAAAAAAAAAAAQAAAXZ_QVCpqC86PbjCIyZa1S_LCgq6pSNlk2NHzKtU3_qdG90gWytjk3cVj5bUrw4B9azHCvJC1zyG3kQUWqqPtmuBdiF5haiEuxknPDGen6-TalbiL4rBXA8tZKOdnhQzihUZTRFek6t08Pgbs_HYrjaKXlJv_4WnQ6Wv2ea9Gt
-2cTjVzndVWzYl_LklyUlVWZzRCdhArNstTtg_qZkxcFPD6NrufYYHpKCEY_tZcgvjK3I79KBBLzBUkSR1Rt8ZwwYnopMsA0jZGpaQYGgv4oSSVvdocY-XvxUmszjrzzqEA1ipDkKc2iuv16NiVz7VyiT-NEzMoiyGUTDyK8Nb9HA7Tc6RTVVKM-WF6gXP-yv-rSmntM4R0ouILmuQc8xCx8AWDWtRhzPc3dt5OE2cEAgNTZxFQ6q-aVwIQpBSwcyPJD0NJIQK6uFVmTdrnSXh5ViM8geYRtRzEobRB2qxVVm8OG6xgNRzjKmE3D6FcOnE3RDh18IofCgchhWNKIPtwRRhoHCIMbgAZzBlAjEA6lQxpipABkXVqZI6Zn7IDf3ElluOeBQoZ2IR3B7U-yi1Jof5VsCjbmU0JF1_G70-AjAUoFsD5e9vw3hTkg-8XYGSoUIFdLPU057P37nh8TX2HjD9jWxtR97l7MDFYHOPyTM=.909cdd80-fe40-45bd-9864-b695c85985c4-f11bd433-f8e9-44ed-885b-e1072aea4ec8"
        }
    ],
    "FacetResults": [],
    "TotalNumberOfResults": 3
}
```



# 付録1 : 外部ドメインを許可

外部ドメインを許可した時の動きも見ておきましょう。

- Sync everything で、外部のドメインもすべて許可する

![image-20231119152117031.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/fec1c449-7338-e08a-c45a-8a557e091e75.png)



AWS CLI でクエリー

```
> aws kendra query --index-id "22d42d77-a738-4385-852c-759bad160da0" \
      --attribute-filter '{
    "EqualsTo":{
      "Key": "_language_code",
      "Value": {"StringValue": "ja"}
    }
  }' \
      --sorting-configuration '{
    "DocumentAttributeKey": "_created_at",
    "SortOrder": "DESC"
  }' \
      --page-size 100
```



結果 : 外部ドメインのデータが追加されていることがわかります。

```
{
    "QueryId": "7b31687b-063e-4793-bfcf-3722354ff2b6",
    "ResultItems": [
        {
            "Id": "7b31687b-063e-4793-bfcf-3722354ff2b6-877bfe7b-7bd9-4f2b-9faf-95e482648002",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/page01.html",
            "DocumentTitle": {
                "Text": "ページ1",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "EC2（Elastic Compute Cloud）は、Amazon Web Services（AWS）が提供するクラウドベースのコンピューティングサービスです。このサービスを利用することで、ユーザーは物理的なサーバーを購入、設置、維持することなく、仮想マシン（インスタンスと呼ばれる）をオンデマンドで起動し、用途に応じてスケーリングすることができます。 EC2の主な特徴は以下の通りです： 柔軟性：さまざまな種類のインスタンスが用意されており、CPU、メモリ、ストレー
ジ、ネットワーク性能など、必要に応じて最適なリソース構成を選択できます。 スケーラビリティ：需要に基づいてリソースを簡単にスケールアップまたはスケールダウンできます。自動スケーリングを使用すれば、トラフィックの増減に応じて自動的にインスタンス数を調整することも可能です。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/page01.html",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "ページ1"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2149
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/page01.html"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMM0BIPemNmLaOpmdg3ttFwAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREFoN0ovMGp6Q3Y4bkxMWGNxWUd1QXJUeVluUzJwZFB4UGdKUTZreUMxdkc2RjlyRjM5UEZWLytRUGl2MlFTOVltQT09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mATiLDc4Tr06AOSmEzc1G26QAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAzUIrdQ1-BUWrH79dkCARCAO364q8WpmPzw4APRRINocZo2s2zywMnmtTeArbHG-MLfUHuyOLVnE6DXEEUwI1oKdwJVyMMDkgRidFkxAgAAAAAMAAAQAAAAAAAAAAAAAAAAACsT3Oa1Ta-JUsHk055NI4v_____AAAAAQAAAAAAAAAAAAAAAQAAAXYowEOr7rxV_2xP630v29U--qngS6w5MJtp3SOxqj5MNWifTeZfFEwbYB96StAcDkciLaug0nMdZzICj8D5PyaBdFec3nc199f2QVTKGhEBJXDgqAmeOmOyhWJgm194og5efvNFfAfiRvB1V0UXDt0XURvAARh7i0g8bwHh183hnqcacZO5VMYgky-B2nEvXXsjezXdEyCm1jZhdGRXzQ-Z15sImjRgs7HED35O4vQHPioNNh6jvi
_Jxg4E8ylhyLDCxFbLuicrzEqG4Yv2jCyppnoMiibxylF79rKS0cfgEyjNZNYA5aB-k7dqAqw-dMf7B__xUGBVycFdU6-yX4vgF0rFcWxZQlAV03Le-86r7I-XzAUAfazqxM113pJ6qNJ4nG-W45Yl1HCuNgJ76sawYqFOi1eS8kmntIoGaPB8rHjPCuEJF4n-sK0v2nHwuMJdEcoSS51NEyv3UvXaIUKvwfkGmEv8fzqMsMo-Fy2StG6Bqs0HeMRewt85kg-bab30-KXN0PwAZzBlAjEAiiddHlqVA8ETiRHBpDpSlSl6tTVKEPNus_rzhuZkC4Uo-IEWiwdLIBDh4mq6E_DwAjBdcs8ZoCMXN3UhV-HH--6yF_aphoQW9jhhu97WFavdG8sc3PD9QzokjbnFd01p9ww=.7b31687b-063e-4793-bfcf-3722354ff2b6-877bfe7b-7bd9-4f2b-9faf-95e482648002"
        },
        {
            "Id": "7b31687b-063e-4793-bfcf-3722354ff2b6-a66f6bdb-324f-4eab-ad07-ccfcaa92ceb9",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/page02.html",
            "DocumentTitle": {
                "Text": "ページ2",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "S3（Amazon Simple Storage Service）は、Amazon Web Services（AWS）が提供するオブジェクトストレージサービスです。このサービスを利用することで、ユーザーはインターネットを通じて大量のデータを安全かつ
効率的に保存、取得、共有することができます。 S3の主な特徴は以下の通りです： 耐久性と可用性：データは複数の物理的な場所に跨って冗長的に保存され、高い耐久性と可用性を提供します。AWSは99.999999999%（11 9's）の耐久性を保証し
ています。 スケーラビリティ：ユーザーは任意の量のデータを保存でき、使用する分だけ料金を支払います。データ量が増えても自動的にスケールします。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/page02.html",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "ページ2"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2401
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/page02.html"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMM0BIPemNmLaOpmdg3ttFwAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREFoN0ovMGp6Q3Y4bkxMWGNxWUd1QXJUeVluUzJwZFB4UGdKUTZreUMxdkc2RjlyRjM5UEZWLytRUGl2MlFTOVltQT09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mATiLDc4Tr06AOSmEzc1G26QAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAzUIrdQ1-BUWrH79dkCARCAO364q8WpmPzw4APRRINocZo2s2zywMnmtTeArbHG-MLfUHuyOLVnE6DXEEUwI1oKdwJVyMMDkgRidFkxAgAAAAAMAAAQAAAAAAAAAAAAAAAAACsT3Oa1Ta-JUsHk055NI4v_____AAAAAQAAAAAAAAAAAAAAAQAAAXYowEOr7rxV_2xP630v29U--qngS6w5MJtp3SOxqj5MNWifTeZfFEwbYB96StAcDkciLaug0nMdZzICj8D5PyaBdFec3nc199f2QVTKGhEBJXDgqAmeOmOyhWJgm194og5efvNFfAfiRvB1V0UXDt0XURvAARh7i0g8bwHh183hnqcacZO5VMYgky-B2nEvXXsjezXdEyCm1jZhdGRXzQ-Z15sImjRgs7HED35O4vQHPioNNh6jvi
_Jxg4E8ylhyLDCxFbLuicrzEqG4Yv2jCyppnoMiibxylF79rKS0cfgEyjNZNYA5aB-k7dqAqw-dMf7B__xUGBVycFdU6-yX4vgF0rFcWxZQlAV03Le-86r7I-XzAUAfazqxM113pJ6qNJ4nG-W45Yl1HCuNgJ76sawYqFOi1eS8kmntIoGaPB8rHjPCuEJF4n-sK0v2nHwuMJdEcoSS51NEyv3UvXaIUKvwfkGmEv8fzqMsMo-Fy2StG6Bqs0HeMRewt85kg-bab30-KXN0PwAZzBlAjEAiiddHlqVA8ETiRHBpDpSlSl6tTVKEPNus_rzhuZkC4Uo-IEWiwdLIBDh4mq6E_DwAjBdcs8ZoCMXN3UhV-HH--6yF_aphoQW9jhhu97WFavdG8sc3PD9QzokjbnFd01p9ww=.7b31687b-063e-4793-bfcf-3722354ff2b6-a66f6bdb-324f-4eab-ad07-ccfcaa92ceb9"
        },
        {
            "Id": "7b31687b-063e-4793-bfcf-3722354ff2b6-69694b03-3b42-4b90-8dd7-058ee00328ec",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/welcome.html",
            "DocumentTitle": {
                "Text": "AWS Lambda の概要 - AWS Lambda",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "レイヤー\nライブラリおよびその他の依存関係をパッケージ化し、デプロイアーカイブのサイズを削減し、コードをデプロイするスピードを速めます。\nLambda 拡張機能\nモニタリング、視認性、セキュリティ、ガバ
ナンスに使用するツールで Lambda 関数を強化します。\n関数 URL\nLambda 関数に専用の HTTP(S) エンドポイントを追加します。",
                "Highlights": []
            },
            "DocumentURI": "https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/welcome.html",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "AWS Lambda の概要 - AWS Lambda"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 8382
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/welcome.html"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMM0BIPemNmLaOpmdg3ttFwAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREFoN0ovMGp6Q3Y4bkxMWGNxWUd1QXJUeVluUzJwZFB4UGdKUTZreUMxdkc2RjlyRjM5UEZWLytRUGl2MlFTOVltQT09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mATiLDc4Tr06AOSmEzc1G26QAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAzUIrdQ1-BUWrH79dkCARCAO364q8WpmPzw4APRRINocZo2s2zywMnmtTeArbHG-MLfUHuyOLVnE6DXEEUwI1oKdwJVyMMDkgRidFkxAgAAAAAMAAAQAAAAAAAAAAAAAAAAACsT3Oa1Ta-JUsHk055NI4v_____AAAAAQAAAAAAAAAAAAAAAQAAAXYowEOr7rxV_2xP630v29U--qngS6w5MJtp3SOxqj5MNWifTeZfFEwbYB96StAcDkciLaug0nMdZzICj8D5PyaBdFec3nc199f2QVTKGhEBJXDgqAmeOmOyhWJgm194og5efvNFfAfiRvB1V0UXDt0XURvAARh7i0g8bwHh183hnqcacZO5VMYgky-B2nEvXXsjezXdEyCm1jZhdGRXzQ-Z15sImjRgs7HED35O4vQHPioNNh6jvi_Jxg4E8ylhyLDCxFbLuicrzEqG4Yv2jCyppnoMiibxylF79rKS0cfgEyjNZNYA5aB-k7dqAqw-dMf7B__xUGBVycFdU6-yX4vgF0rFcWxZQlAV03Le-86r7I-XzAUAfazqxM113pJ6qNJ4nG-W45Yl1HCuNgJ76sawYqFOi1eS8kmntIoGaPB8rHjPCuEJF4n-sK0v2nHwuMJdEcoSS51NEyv3UvX
aIUKvwfkGmEv8fzqMsMo-Fy2StG6Bqs0HeMRewt85kg-bab30-KXN0PwAZzBlAjEAiiddHlqVA8ETiRHBpDpSlSl6tTVKEPNus_rzhuZkC4Uo-IEWiwdLIBDh4mq6E_DwAjBdcs8ZoCMXN3UhV-HH--6yF_aphoQW9jhhu97WFavdG8sc3PD9QzokjbnFd01p9ww=.7b31687b-063e-4793-bfcf-3722354ff2b6-69694b03-3b42-4b90-8dd7-058ee00328ec"
        },
        {
            "Id": "7b31687b-063e-4793-bfcf-3722354ff2b6-4270aa24-91b3-4b27-a5c5-46385ab82fe0",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Welcome.html",
            "DocumentTitle": {
                "Text": "Amazon Relational Database Service (Amazon RDS) とは - Amazon Relational Database Service",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "Amazon EC2 では、これらが分離されているため、個別にスケールできます。CPU の増加、IOPS の削減、またはストレージの追加が必要な場合、簡単に割り当てることができます。\nオンプレミスサーバーのリレーショナルデータベースの場合、サーバー、OS、およびソフトウェアに関する全責任を負うものとします。Amazon EC2 インスタンス上のデータベースでは、AWSOSより下のレイヤーを管理します。このようにして、Amazon EC2 は、オンプレミスのデータベースサーバーを管理する負担の一部を軽減します。\n次の表では、オンプレミスのデータベースと Amazon EC2 の管理モデルを比較します。\n機能\nオンプレミスの管理\nAmazon EC2 の管理\nアプリケーションの最適化\nカスタマー\nカスタマー\n[Scaling] (スケーリング)\nカスタマー",
                "Highlights": []
            },
            "DocumentURI": "https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Welcome.html",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "Amazon Relational Database Service (Amazon RDS) とは - Amazon Relational Database Service"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 22204
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Welcome.html"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMM0BIPemNmLaOpmdg3ttFwAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREFoN0ovMGp6Q3Y4bkxMWGNxWUd1QXJUeVluUzJwZFB4UGdKUTZreUMxdkc2RjlyRjM5UEZWLytRUGl2MlFTOVltQT09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mATiLDc4Tr06AOSmEzc1G26QAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAzUIrdQ1-BUWrH79dkCARCAO364q8WpmPzw4APRRINocZo2s2zywMnmtTeArbHG-MLfUHuyOLVnE6DXEEUwI1oKdwJVyMMDkgRidFkxAgAAAAAMAAAQAAAAAAAAAAAAAAAAACsT3Oa1Ta-JUsHk055NI4v_____AAAAAQAAAAAAAAAAAAAAAQAAAXYowEOr7rxV_2xP630v29U--qngS6w5MJtp3SOxqj5MNWifTeZfFEwbYB96StAcDkciLaug0nMdZzICj8D5PyaBdFec3nc199f2QVTKGhEBJXDgqAmeOmOyhWJgm194og5efvNFfAfiRvB1V0UXDt0XURvAARh7i0g8bwHh183hnqcacZO5VMYgky-B2nEvXXsjezXdEyCm1jZhdGRXzQ-Z15sImjRgs7HED35O4vQHPioNNh6jvi
_Jxg4E8ylhyLDCxFbLuicrzEqG4Yv2jCyppnoMiibxylF79rKS0cfgEyjNZNYA5aB-k7dqAqw-dMf7B__xUGBVycFdU6-yX4vgF0rFcWxZQlAV03Le-86r7I-XzAUAfazqxM113pJ6qNJ4nG-W45Yl1HCuNgJ76sawYqFOi1eS8kmntIoGaPB8rHjPCuEJF4n-sK0v2nHwuMJdEcoSS51NEyv3UvXaIUKvwfkGmEv8fzqMsMo-Fy2StG6Bqs0HeMRewt85kg-bab30-KXN0PwAZzBlAjEAiiddHlqVA8ETiRHBpDpSlSl6tTVKEPNus_rzhuZkC4Uo-IEWiwdLIBDh4mq6E_DwAjBdcs8ZoCMXN3UhV-HH--6yF_aphoQW9jhhu97WFavdG8sc3PD9QzokjbnFd01p9ww=.7b31687b-063e-4793-bfcf-3722354ff2b6-4270aa24-91b3-4b27-a5c5-46385ab82fe0"
        },
        {
            "Id": "7b31687b-063e-4793-bfcf-3722354ff2b6-b1872bd7-b384-4509-a26e-c8424a53dd05",
            "Type": "DOCUMENT",
            "Format": "TEXT",
            "AdditionalAttributes": [],
            "DocumentId": "https://d3f6kbo9gfuo2p.cloudfront.net/",
            "DocumentTitle": {
                "Text": "トップページ",
                "Highlights": []
            },
            "DocumentExcerpt": {
                "Text": "AWSの特徴は以下の通りです： 幅広いサービス範囲：AWSはコンピューティング、ストレージ、データベース、機械学習、人工知能、IoT（Internet of Things）、セキュリティ、モビリティなど、多岐にわたるサービスを提供しています。 スケーラビリティと柔軟性：顧客は必要に応じてリソースを増減でき、大規模なインフラストラクチャから小規模なプロジェクトまで幅広いニーズに対応できます。 コスト効率：従量課金制のため、使用した分だけ料金を支
払います。高額なハードウェアの購入やメンテナンスの必要がなく、初期投資が抑えられます。",
                "Highlights": []
            },
            "DocumentURI": "https://d3f6kbo9gfuo2p.cloudfront.net/",
            "DocumentAttributes": [
                {
                    "Key": "wc_title",
                    "Value": {
                        "StringValue": "トップページ"
                    }
                },
                {
                    "Key": "wc_html_size",
                    "Value": {
                        "LongValue": 2146
                    }
                },
                {
                    "Key": "_source_uri",
                    "Value": {
                        "StringValue": "https://d3f6kbo9gfuo2p.cloudfront.net/"
                    }
                }
            ],
            "ScoreAttributes": {
                "ScoreConfidence": "NOT_AVAILABLE"
            },
            "FeedbackToken": "AYADeMM0BIPemNmLaOpmdg3ttFwAXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREFoN0ovMGp6Q3Y4bkxMWGNxWUd1QXJUeVluUzJwZFB4UGdKUTZreUMxdkc2RjlyRjM5UEZWLytRUGl2MlFTOVltQT09AAEAB2F3cy1rbXMAUGFybjphd3M6a21zOmFwLW5vcnRoZWFzdC0xOjM2ODE0OTcwOTMzMTprZXkvZTA3NzQ2ZDItNTk0MS00OTk4LWFmYjktYzdmNjI1NDViYTcyALgBAgEAeBvkWk4v2viXv6Q3OVt9MNsYK6YAD1Hf5wG33DwH64_mATiLDc4Tr06AOSmEzc1G26QAAAB-MHwGCSqGSIb3DQEHBqBvMG0CAQAwaAYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAzUIrdQ1-BUWrH79dkCARCAO364q8WpmPzw4APRRINocZo2s2zywMnmtTeArbHG-MLfUHuyOLVnE6DXEEUwI1oKdwJVyMMDkgRidFkxAgAAAAAMAAAQAAAAAAAAAAAAAAAAACsT3Oa1Ta-JUsHk055NI4v_____AAAAAQAAAAAAAAAAAAAAAQAAAXYowEOr7rxV_2xP630v29U--qngS6w5MJtp3SOxqj5MNWifTeZfFEwbYB96StAcDkciLaug0nMdZzICj8D5PyaBdFec3nc199f2QVTKGhEBJXDgqAmeOmOyhWJgm194og5efvNFfAfiRvB1V0UXDt0XURvAARh7i0g8bwHh183hnqcacZO5VMYgky-B2nEvXXsjezXdEyCm1jZhdGRXzQ-Z15sImjRgs7HED35O4vQHPioNNh6jvi
_Jxg4E8ylhyLDCxFbLuicrzEqG4Yv2jCyppnoMiibxylF79rKS0cfgEyjNZNYA5aB-k7dqAqw-dMf7B__xUGBVycFdU6-yX4vgF0rFcWxZQlAV03Le-86r7I-XzAUAfazqxM113pJ6qNJ4nG-W45Yl1HCuNgJ76sawYqFOi1eS8kmntIoGaPB8rHjPCuEJF4n-sK0v2nHwuMJdEcoSS51NEyv3UvXaIUKvwfkGmEv8fzqMsMo-Fy2StG6Bqs0HeMRewt85kg-bab30-KXN0PwAZzBlAjEAiiddHlqVA8ETiRHBpDpSlSl6tTVKEPNus_rzhuZkC4Uo-IEWiwdLIBDh4mq6E_DwAjBdcs8ZoCMXN3UhV-HH--6yF_aphoQW9jhhu97WFavdG8sc3PD9QzokjbnFd01p9ww=.7b31687b-063e-4793-bfcf-3722354ff2b6-b1872bd7-b384-4509-a26e-c8424a53dd05"
        }
    ],
    "FacetResults": [],
    "TotalNumberOfResults": 5
}
```





# 付録2 : 便利クエリーやコマンドメモ

クローラー対象の URL を検索するクエリー例

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /Crawling for the URL/
```

　

　

クローリングが成功した内容を検索するクエリー例

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /has been completed successfully/
```

　

　

追加が成功した Document の数

```
fields @ingestionTime, Message, DocumentId, SourceId, @timestamp, AwsAccountId, IndexId, LogLevel, ErrorCode, ErrorMessage, message
| sort @timestamp desc
| filter Message like /Number of documents (successfully indexed|failed to index) from current batch in index/
```

　

　

対象の Kendra Index に保存されている `ja` 言語の Document を全て取得するクエリーコマンド

```
aws kendra query --index-id "22d42d77-a738-4385-852c-759bad160da0" \
--attribute-filter '{
  "EqualsTo":{
    "Key": "_language_code",
    "Value": {"StringValue": "ja"}
  }
}' \
--sorting-configuration '{
  "DocumentAttributeKey": "_created_at",
  "SortOrder": "DESC"
}' \
--page-size 100
```



# 検証を通じてわかったこと

- Web Crawler v2 の中にある Depth の値は、指定した URL でリンクされている別のページをどれくらい辿るかという「深さ」を指定するパラメーターとなる。
  - Depth 0 : 指定した URL のデータは Index に追加するが、URL 内に記載される別ページへのリンクは辿らない
  - Depth 1 : 指定した URL のデータは Index に追加する。また、URL 内に記載されている別ページへのリンクは、1 段階まで辿ってデータを追加する。
- 1 つの Web ページが、1 つの Document として Kendra Index に格納される
- Web ページの中に、PDF などのファイルへのリンクがあっても、PDF ファイルは Kendra Index に追加されなかった (この検証手順では。もしかしたら他にやり方があるかもしれない)