ライフサイクル設定をデバッグする - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ライフサイクル設定をデバッグする

重要

2023 年 11 月 30 日の時点で、以前の Amazon SageMaker Studio エクスペリエンスは Amazon SageMaker スタジオクラシックという名前になりました。以下のセクションは Studio Classic アプリケーションの使用に特化したものです。最新の Studio エクスペリエンスの使用方法については、を参照してくださいAmazon SageMaker Studio

次のトピックでは、ライフサイクル設定に関する情報を取得してデバッグする方法を説明します。

CloudWatch ライフサイクル設定プロセスをログから検証します。

ライフサイクル設定では STDOUTSTDERR のみを記録します。

STDOUT は、bash スクリプトのデフォルト出力です。bash コマンドの最後に >&2 を追加することで、STDERR に書き込むことができます。例えば echo 'hello'>&2 です。

ライフサイクル設定のログは、 AWS アカウント 使用している Amazon CloudWatch に公開されます。/aws/sagemaker/studio CloudWatch これらのログはコンソールのログストリームにあります。

  1. https://console.aws.amazon.com/cloudwatch/ CloudWatch でコンソールを開きます。

  2. 左側で [ログ] を選択します。ドロップダウンメニューで、[ロググループ] を選択します。

  3. [ロググループ] ページで、aws/sagemaker/studio を検索します。

  4. ロググループを選択します。

  5. [ロググループの詳細] ページで、[ログストリーム] タブを選択します。

  6. 特定のアプリのログを検索するには、次の形式を使用してログストリームを検索します。

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

    例えば、ドメイン d-m85lcu8vbqmz、ユーザープロファイル i-sonic-js、アプリケーションタイプ JupyterServer、アプリケーション名 test-lcc-echo のライフサイクル設定のログを検索するには、次の検索文字列を使用します。

    d-m85lcu8vbqmz/i-sonic-js/JupyterServer/test-lcc-echo
  7. LifecycleConfigOnStart で追加されたログストリームを選択して、スクリプト実行ログを表示します。

JupyterServer アプリ障害

JupyterServer 添付されているライフサイクル設定の問題が原因でアプリがクラッシュした場合、Studio Classic の起動画面に次のエラーメッセージが表示されます。

Failed to create SageMaker Studio due to start-up script failure

View script logsリンクを選択すると、 CloudWatch JupyterServer アプリのログが表示されます。

ドメイン、ユーザープロファイル、または共有スペースで誤ったライフサイクル構成が指定されている場合、Studio Classic は Studio Classic を再起動した後もライフサイクル構成を引き続き使用します。DefaultResourceSpec

このエラーを解決するには、「デフォルトのライフサイクル設定を設定する」の手順に従って DefaultResourceSpec からライフサイクル設定スクリプトを削除するか、別のスクリプトをデフォルトに設定します。次に、 JupyterServer 新しいアプリを起動します。

KernelGateway アプリ障害

KernelGateway 添付されているライフサイクル設定の問題が原因でアプリケーションがクラッシュした場合、Studio Classic は Studio Classic ノートブックにエラーメッセージを表示します。

CloudWatch KernelGatewayアプリのログの表示を選択しますView script logs

この場合、新しい Studio Classic ノートブックを起動するときに Studio クラシックランチャーでライフサイクル設定が指定されます。

このエラーを解決するには、Studio Classic ランチャーを使用して別のライフサイクル設定を選択するか、を選択します。No script

注記

KernelGateway で指定されているデフォルトのライフサイクル設定は、ユーザーが Studio Classic ランチャーに表示されるリストから別のスクリプトを選択しない限り、ドメイン、ユーザープロファイル、DefaultResourceSpec KernelGateway または共有スペース内のすべての画像に適用されます。デフォルトのスクリプトは、ユーザーが [No Script] (スクリプトなし) を選択した場合にも実行されます。スクリプトの選択については、「手順 3: ライフサイクル設定を使用してアプリケーションを起動する」を参照してください。

ライフサイクル設定のタイムアウト

ライフサイクル設定のタイムアウトの制限は 5 分です。ライフサイクル設定スクリプトの実行に 5 分以上かかる場合、Studio Classic はエラーを返します。

このエラーを解決するには、ライフサイクル設定スクリプトが 5 分以内に完了するようにします。

スクリプトの実行時間を短縮できるように、次のことを試してください。

  • 必要なステップを削減します。例えば、大きなパッケージをインストールする conda 環境を制限します。

  • 並列プロセスでタスクを実行します。

  • スクリプトで nohup コマンドを使用して、ハングアップシグナルを無視し、スクリプトの実行が停止しないようにします。