本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon CloudWatch Logs 監控 Amazon Kendra
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 使用者指南》中的什麼是 Amazon Cloud Watch Logs。
Amazon Kendra 會建立兩種類型的日誌串流:
資料來源日誌串流
資料來源日誌串流會發佈索引同步任務的相關項目。每個同步任務都會建立新的日誌串流,用來發佈項目。日誌串流名稱為:
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" }
文件日誌串流
Amazon Kendra 會在文件編製索引時記錄處理文件的相關資訊。它會為存放在 Amazon S3 資料來源中的文件記錄一組訊息。它只會針對存放在 Microsoft SharePoint 或資料庫資料來源中的文件記錄錯誤。
如果使用 BatchPutDocument 操作將文件新增至索引,則日誌串流的名稱如下:
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 指標
您可以透過選取檢視報告,在 CloudWatch 中檢視資料來源同步任務的文件層級同步執行歷史記錄報告。同步執行歷史記錄報告將提供有關同步任務中每個文件的進度和狀態的詳細資訊。它會顯示文件在爬蟲、同步和索引階段期間是否成功、失敗或遭到略過。您也可以找到與失敗或略過文件相關的任何錯誤訊息。如果報告未顯示進行中同步任務的結果,則日誌可能尚無法使用。當資料在同步過程中發生事件時,請稍後再回來查看。
若要存取同步執行歷史記錄報告,請執行下列步驟:
-
在 https://console.aws.amazon.com/kendra/
:// 開啟 Amazon Kendra 主控台。 -
在左側導覽選單的資料管理下,選擇資料來源,然後選擇您的資料來源。
-
從您的資料來源摘要頁面中,向下捲動並選取同步歷史記錄索引標籤。
-
從同步執行歷史記錄中,選取動作。
-
在動作中,選取檢視報告。系統會將您重新導向至 CloudWatch 主控台,您可以在其中存取您的報告。
注意
如果文件在擷取期間成功編製索引,包括連接 ACLs和中繼資料,則同步執行歷史記錄會記錄所有 Amazon Kendra 支援的連接器。
如果您使用的是 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 貯體,您會遺失日誌資料,而且必須設定新的儲存貯體來存放新的同步報告。
注意
同步歷史記錄報告僅提供有關 Amazon S3 連接器是否成功爬取和擷取資料的資訊。