数据来源故障排除 - Amazon Kendra

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

数据来源故障排除

本节可以帮助您解决配置和使用时的常见问题 Amazon Kendra 数据源连接器。

我的文档没有编入索引

当你同步你的 Amazon Kendra 使用数据源编制索引,您可能会遇到无法对文档进行索引的问题。编制索引包括两个步骤。首先,检查数据来源中是否有要编制索引的新文档和更新文档,并查找要从索引中移除的文档。其次,确保可在文档级别访问每个文档和编制索引。

这两个步骤中都可能出现错误。数据来源级别的错误将在控制台的数据来源详细信息页面的同步运行历史记录部分报告。同步作业的状态可能是成功未完成失败。您还可以看到在作业执行期间已编制索引和删除的文档数量。如果状态为失败,则详细信息列中会显示一条消息。

在中报告了文档级别的错误 Amazon CloudWatch Logs。 你可以使用查看错误 CloudWatch console。

要生成文档同步状态报告,请参阅我要为文档生成同步状态报告

我的同步作业失败了

当索引或数据来源中出现配置错误时,同步作业通常会失败。在控制台中,您可以在数据来源详细信息页面的同步运行历史记录部分的详细信息列下找到错误消息。在中报告了文档级别的错误 Amazon CloudWatch Logs。 错误消息提供了有关出了什么问题的信息。问题通常是索引或数据源没有正确的索引或数据源 IAM 权限。错误消息会描述缺少的权限。以下是您可能会收到的一些错误消息:

Failed to create log group for job. Please make sure that the IAM role provided has sufficient permissions.

如果您的索引角色无权使用 CloudWatch,则数据源将无法创建 CloudWatch 日志。如果出现此错误,则必须添加 CloudWatch 索引角色的权限。

Failed to access Amazon S3 file prefix (bucket name) while trying to crawl your metadata files. Please make sure the IAM role (ARN) provided has sufficient permissions.

当你使用 Amazon S3 数据源, Amazon Kendra 必须拥有访问包含文档的存储桶的权限。你需要为添加权限 Amazon Kendra 将存储桶读取到数据源 IAM 角色。

The provided IAM role (ARN) could not be assumed. Please make sure Amazon Kendra is a trusted entity that is allowed to assume the role.

Amazon Kendra 需要权限才能使用索引和数据源 IAM 角色。您需要向具有 sts:AssumeRole 操作的权限的角色添加信任策略。

对于 IAM 那样的政策 Amazon Kendra 需要为数据源编制索引,请参阅 IAM 角色

要生成文档同步状态报告,请参阅我要为文档生成同步状态报告

我的同步任务未完成

通常,如果完成了数据来源级别的流程,但在文档级别的处理过程中出现了一些错误,则不会完成作业。如果作业未完成,则某些文档可能无法成功编制索引。对于 Amazon S3 数据源,作业不完整通常是由以下原因造成的:

  • 一个或多个文档的元数据无效。

  • 当提交文档以编制索引时,至少有一个文档未提交。

  • 当提交要从索引中删除的文档时,至少有一个文档未提交。

要对未完成的同步作业进行故障排除,请先查看 CloudWatch 日志。

  1. 在详细信息列中,选择查看详细信息 CloudWatch.

  2. 查看错误消息,以便了解导致文档失败的原因。

要生成文档同步状态报告,请参阅我要为文档生成同步状态报告

我的同步作业执行成功了,但没有编制了索引的文档

有时,运行的索引同步作业会被标记为成功,但没有按预期为新文档或更新的文档编制索引。可能的原因包括:

  • Check CloudWatch DocumentsSubmittedForIndexingFailed衡量标准,以查看是否有任何文档无法同步。检查你的 CloudWatch 有关详细信息,请记录日志。

  • 对于 Amazon S3 数据源,你可能已经给出了 Amazon Kendra 错误的存储桶名称或前缀。一定要把那个桶放进去 Amazon Kendra 正在使用的是包含要索引的文档的那个。

  • 在为之前的作业中未能编制索引的文档重新编制索引时, Amazon Kendra 除非您更改了文档或其关联的元数据文件,否则不会将其编入索引。

要生成文档同步状态报告,请参阅我要为文档生成同步状态报告

我在同步数据来源时遇到了文件格式问题

如果您在向数据源添加文件或同步数据源时遇到文件格式问题,请确保您的文档类型为 Amazon Kendra 支持的。有关支持的文档类型的列表 Amazon Kendra 请参阅文档类型或格式

如果您使用的是纯文本文件,请指定PLAIN_TEXT为内容类型。BatchPutDocument API

我要为文档生成同步历史记录报告

选择 “查看报告”,即可在中查看数据源同步作业 CloudWatch 的文档级同步运行历史报告。同步运行历史记录报告将包含有关同步作业中每个文档的进度和状态的详细信息。它显示文档在抓取、同步和索引阶段是成功、失败还是被跳过。您还可以找到与失败或跳过的文档相关的所有错误消息。如果报告未显示正在进行的同步作业的结果,则日志可能尚不可用。请稍后再回来查看,因为同步过程中发生的事件会将数据发送到报告中。

要访问您的同步运行历史记录报告,请执行以下步骤:

  1. 打开亚马逊 Kendra 主机,网址为。https://console.aws.amazon.com/kendra/

  2. 在左侧导航菜单的 “数据管理” 下,选择 “数据源”,然后选择您的数据源。

  3. 在数据源摘要页面上,向下滚动并选择同步历史记录选项卡。

  4. 同步运行历史记录中,选择操作

  5. 在 “操作” 中,选择 “查看报告”。您将被重定向到 CloudWatch 控制台,在那里您可以访问您的报告。

注意

同步运行历史记录记录了所有支持 Amazon Kendra 的连接器的文档(包括附件ACLs和元数据)在摄取期间是否成功编制了索引。

如果您使用的是 Amazon S3 连接器:

除了在中查看文档级同步运行历史记录报告外 CloudWatch,您还可以为 Amazon S3 数据源中的每个文档生成同步历史报告并将其复制到 Amazon S3 桶。在此过程中,您的数据将使用以下方式进行加密 AWS KMS 密钥,只能由您查看。报告的文档状态包括:失败已完成成功但有错误。在为 Amazon S3 生成同步状态报告之前,您必须执行以下操作:

  • 添加以下内容 Amazon Kendra 服务负责人给你的 Amazon S3 访问策略

    { “Version”: “2012-10-17", “Statement”: [ { “Sid”: “KendraS3Access”, “Effect”: “Allow”, “Principal”: { “Service”: “kendra.amazonaws.com” }, “Action”: “s3:PutObject”, “Resource”: “arn:aws:s3:::your-manifest-bucket-name/*” } ] }
  • 创建一个 Amazon S3 具有访问权限的存储桶 Amazon Kendra

如果您使用控制台,要为 Amazon S3 生成同步历史报告,请选择激活 “数据源详细信息” 页面上的 “同步历史报告” 中的生成报告选项(可选)。然后,输入 Amazon S3 存储桶位置,然后从可用的配置选项中进行选择。激活报告的生成后,下次同步时即可生成报告。

如果你删除 Amazon S3 bucket,您将丢失日志数据,并且必须设置一个新的存储桶来存储新的同步报告。

注意

同步历史记录报告仅提供有关 Amazon S3 连接器是否成功抓取和提取数据的信息。

同步数据来源需要多长时间?

如果文档没有更新,则同步时间 Amazon Kendra 索引的增加与文档数量成线性比例。例如,1,000 个没有任何更新的文档大约需要五分钟完成同步,而 2,000 份没有任何更新的文档则大约需要 10 分钟。如果文档有更新,则同步时间将根据更新的文档数量而增加。

同步数据来源的费用是多少?

同步索引时,需要两分钟才能预热和激活 Amazon EC2 建立必要的连接。在此过程中,您无需支付任何费用。在同步作业开始后,您的使用量表才会启动。有关 Amazon Kendra 定价,请参阅 Amazon Kendra 定价

我正在收到 Amazon EC2 授权错误

如果 Amazon EC2 在同步虚拟私有云 (VPC) 数据源的过程中出现未经授权的操作错误,很可能是你的 VPC IAM 角色缺少所需的权限。请检查一下 IAM 您用于数据源的角色具有附加权限。有关更多信息,请参阅虚拟私有云 IAM 角色

您的 Amazon Kendra index 只能访问以下文件 Amazon S3 数据源授予其访问权限。例如, Amazon Kendra 无法修改 Amazon S3 权限,用于确定对象是公开还是加密。 Amazon Kendra 也没有创建或返回签名链接的默认权限 Amazon S3 物体。如果你想激活签名链接 Amazon S3 a 中的对象 Amazon Kendra 索引,你有两个选择:

  • 在将索引查询结果返回搜索页面之前,您可以使用源 URI 对象对索引查询结果进行签名。有关此过程的 step-by-step演练,请参阅使用预URLs签名共享对象

  • 你可以覆盖 Amazon S3 对象元数据源 uri 并通过以下方式使您的服务可用 CloudFront 内容分发网络 (CDN) 已连接到 Amazon S3 桶。或者,你可以使用 API Gateway 返回预签名URL并重定向到它的代理端点。

我收到 “使用SSL证书文件AccessDenied 时” 错误消息

如果在数据源中使用SSL证书时遇到拒绝访问错误,请确保您的 IAM 角色有权访问其指定位置的SSL证书文件。如果证书是用加密的 AWS KMS 钥匙,你的 IAM 角色还应具有使用解密的权限 AWS KMS 钥匙。有关更多信息,请参阅身份验证和访问控制 AWS KMS.

使用 SharePoint 数据源时出现授权错误

如果您在将索引与 SharePoint 数据源同步时遇到授权错误,请确认已在中 SharePoint为您分配了站点管理员角色。

索引无法从我的 Confluence 数据来源中爬取文档

如果您的 Amazon Kendra 在同步过程中,索引未从您的 Confluence 数据源中搜寻文档,请确认您是 Confluence 管理员群组的一员。