生命週期組態偵錯 - Amazon SageMaker

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

生命週期組態偵錯

下列主題示範如何取得生命週期組態的相關資訊和偵錯。

從 CloudWatch 記錄確認生命週期組態程序

生命週期組態僅記錄STDOUTSTDERR

STDOUT是 bash 指令碼的預設輸出。您可以STDERR通過附加>&2到 bash 命令的末尾來寫入。例如 echo 'hello'>&2

您的生命週期組態的日誌會發佈到您 AWS 帳戶 使用 Amazon CloudWatch。這些日誌可以在 CloudWatch 控制台的日/aws/sagemaker/studio誌流中找到。

  1. 請在以下位置開啟 CloudWatch 主控台。 https://console.aws.amazon.com/cloudwatch/

  2. 從左側導覽窗格中選擇 [記錄檔]。從下拉式清單中,選擇日誌群組

  3. 在記錄群組頁面上,搜尋aws/sagemaker/studio

  4. 選取 日誌群組。

  5. 日誌群組詳細資訊頁面上,選擇日誌串流標籤。

  6. 若要尋找特定應用程式的記錄檔,請使用下列格式搜尋記錄資料流:

    domain-id/user-profile-name/app-type/app-name

    下列搜尋字串會尋找網域d-m85lcu8vbqmz、使用者設定檔i-sonic-js、應用程式類型JupyterLab和應用程式名稱的生命週期組態記錄test-lcc-echo

    d-m85lcu8vbqmz/i-sonic-js/JupyterLab/test-lcc-echo
  7. 若要檢視指令碼執行記錄,請選取附加的記錄資料流LifecycleConfigOnStart

生命週期組態逾時

生命週期組態逾時限制為 5 分鐘。如果生命週期組態指令碼的執行時間超過 5 分鐘,就會收到錯誤訊息。

若要解決此錯誤,請確定您的生命週期設定指令碼在 5 分鐘內完成。

為了幫助減少腳本的運行時間,請嘗試以下操作:

  • 減少不必要的步驟。例如,限制在哪些 conda 環境中安裝大型套件。

  • 在平行程序中執行任務。

  • 在腳本中使用 nohup 命令,以確保忽略掛斷信號,以便腳本運行而不會停止。