Neptune 載入器 Get-Status errorLogs 範例 - Amazon Neptune

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

Neptune 載入器 Get-Status errorLogs 範例

發生錯誤時的詳細狀態回應範例

這是通過HTTPGET使用以curl下方式發送的請求

curl -X GET 'https://your-neptune-endpoint:port/loader/0a237328-afd5-4574-a0bc-c29ce5f54802?details=true&errors=true&page=1&errorsPerPage=3'
範例 發生錯誤時的詳細回應

這是您可能從上面查詢中取得的回應範例,其中 errorLogs 物件列出了遇到的載入錯誤:

{ "status" : "200 OK", "payload" : { "failedFeeds" : [ { "datatypeMismatchErrors" : 0, "fullUri" : "s3://bucket/key", "insertErrors" : 0, "parsingErrors" : 5, "retryNumber" : 0, "runNumber" : 1, "status" : "LOAD_FAILED", "totalDuplicates" : 0, "totalRecords" : 5, "totalTimeSpent" : 3.0 } ], "feedCount" : [ { "LOAD_FAILED" : 1 } ], "overallStatus" : { "datatypeMismatchErrors" : 0, "fullUri" : "s3://bucket/key", "insertErrors" : 0, "parsingErrors" : 5, "retryNumber" : 0, "runNumber" : 1, "status" : "LOAD_FAILED", "totalDuplicates" : 0, "totalRecords" : 5, "totalTimeSpent" : 3.0 }, "errors" : { "endIndex" : 3, "errorLogs" : [ { "errorCode" : "PARSING_ERROR", "errorMessage" : "Expected '<', found: |", "fileName" : "s3://bucket/key", "recordNum" : 1 }, { "errorCode" : "PARSING_ERROR", "errorMessage" : "Expected '<', found: |", "fileName" : "s3://bucket/key", "recordNum" : 2 }, { "errorCode" : "PARSING_ERROR", "errorMessage" : "Expected '<', found: |", "fileName" : "s3://bucket/key", "recordNum" : 3 } ], "loadId" : "0a237328-afd5-4574-a0bc-c29ce5f54802", "startIndex" : 1 } } }

Data prefetch task interrupted 錯誤的範例

有時候當您取得 LOAD_FAILED 狀態並接著請求更多詳細資訊時,這時傳回的錯誤可能為 PARSING_ERROR 並搭配 Data prefetch task interrupted 訊息,如下所示:

"errorLogs" : [ { "errorCode" : "PARSING_ERROR", "errorMessage" : "Data prefetch task interrupted: Data prefetch task for 11467 failed", "fileName" : "s3://some-source-bucket/some-source-file", "recordNum" : 0 } ]

當資料載入作業發生通常原因不在於您的請求或資料的暫時中斷時,就會出現這個錯誤。通常只要再次執行大量上傳請求,就能解決這個問題。如果您使用的是預設設定,即 "mode":"AUTO""failOnError":"TRUE",這時載入器會略過其已成功載入的檔案,並恢復其在中斷發生時尚未載入的檔案載入。