次の方法で共有


タスク シーケンスのデバッグ

Configuration Manager (現在のブランチ) に適用

タスク シーケンス デバッガーはトラブルシューティング ツールです。 タスク シーケンスをデバッグ モードで小さなコレクションにデプロイします。 これにより、タスク シーケンスを制御された方法でステップ実行して、トラブルシューティングと調査を支援できます。 デバッガーは現在、タスク シーケンス エンジンと同じデバイスで実行され、リモート デバッガーではありません。

ヒント

この機能は、 プレリリース機能としてバージョン 1906 で初めて導入されました。 バージョン 2203 以降では、プレリリース機能ではなくなりました。

Configuration Managerでは、このオプション機能は既定では有効になりません。 使用する前に、この機能を有効にする必要があります。 詳細については、「更新プログラムのオプション機能の有効化」を参照してください。

前提条件

  • ターゲット デバイス上のConfiguration Manager クライアントを更新する

  • ローカルの Administrators グループのユーザーとしてターゲット デバイスにサインインします。 デバッガーは管理者に対してのみ実行されます。

  • タスク シーケンスに関連付けられているブート イメージを更新して、最新のクライアント バージョンを持っていることを確認します

ツールを起動する

  1. Configuration Manager コンソールで、[ソフトウェア ライブラリ] ワークスペースに移動し、[オペレーティング システム] を展開して、[タスク シーケンス] を選択します。

  2. タスク シーケンスを選択します。 リボンの [展開] グループで、[デバッグ] を選択 します

    ヒント

    または、タスク シーケンスを展開するコレクションまたはコンピューター オブジェクトで、変数 TSDebugModeTRUE を に設定します。 この変数が設定されているデバイスは、その変数にデプロイされたタスク シーケンスをデバッグ モードにします。

  3. デバッグ デプロイを作成します。 デプロイ設定は、通常のタスク シーケンスのデプロイと同じです。 詳細については、「 タスク シーケンスのデプロイ」を参照してください。

    注:

    デバッグデプロイには小さなコレクションのみを選択できます。 10 人以下のメンバーを持つデバイス コレクションのみが表示されます。

タスク シーケンス変数 TSDebugOnError を使用して、タスク シーケンスからエラーが返されたときにデバッガーを自動的に起動します。 詳細については、「 タスク シーケンス変数 - TSDebugOnError」を参照してください。

ツールを使用する

タスク シーケンスがデバイス上で実行されると、次のスクリーンショットのように [タスク シーケンス デバッガー] ウィンドウが開きます。

タスク シーケンス デバッガーのスクリーンショット。

デバッガーには、次のコントロールが含まれています。

  • ステップ: 現在 の位置から、タスク シーケンスの次のステップのみを実行します。

    注:

    タスク シーケンスがデバッグ モードの場合、ステップから致命的なエラーが返された場合、タスク シーケンスは通常どおりに失敗しません。 この動作により、外部変更を行った後にステップを再試行するオプションが提供されます。

  • 実行: 現在 の位置から、タスク シーケンスを通常どおり最後まで実行するか、次の ブレークポイント を実行するか、ステップが失敗した場合に実行します。 このアクションを使用する前に、[ブレークの設定] アクションでブレークポイントを 設定 してください。

  • [現在の設定]: デバッガーでステップを選択し、[ 現在の設定] を選択します。 このアクションは、 現在 のポインターをそのステップに移動します。 このアクションを使用すると、ステップをスキップしたり、後方に移動したりできます。

    警告

    シーケンス内の現在の位置を変更する場合、デバッガーはステップの種類を考慮しません。 一部の手順では、後の手順で条件の評価に必要なタスク シーケンス変数を設定できます。 故障した場合、一部の手順が失敗したり、デバイスに重大な損傷を与えたりする可能性があります。 このオプションは自己責任で使用してください。

  • [中断の設定]: デバッガーでステップを選択し、[ 中断の設定] を選択します。 このアクションにより、デバッガーに ブレークポイント が追加されます。 タスク シーケンスを 実行 すると、中断時に停止 します

    • [実行] アクションを使用する前に、ブレークポイントを設定します。

    • デバッガーでブレークポイントを作成し、タスク シーケンスでコンピューターを再起動すると、デバッガーは再起動後もブレークポイントを保持します。

  • [すべてのブレークをクリア]: すべてのブレーク ポイントを削除します。

  • ログ ファイル: 現在のタスク シーケンス ログ ファイル smsts.logCMTrace で開きます。 タスク シーケンス エンジンが "デバッガーを待機中" の場合は、ログ エントリを確認できます。

  • コマンド プロンプト: Windows PE で、コマンド プロンプトを開きます。

  • キャンセル: デバッガーを閉じ、タスク シーケンスに失敗します。

  • 終了: デバッガーをデタッチして閉じますが、タスク シーケンスは引き続き正常に実行されます。

[タスク シーケンス変数] ウィンドウには、タスク シーケンス環境のすべての変数の現在の値が表示されます。 詳細については、「 タスク シーケンス変数」を参照してください。 [タスク シーケンス変数の設定] ステップを [この値を表示しない] オプションを使用すると、デバッガーに変数値は表示されません。 デバッガーで変数の値を編集することはできません。

注:

一部のタスク シーケンス変数は内部でのみ使用され、リファレンス ドキュメントには記載されていません。

タスク シーケンス デバッガーは、[ コンピューターの再起動] ステップの後も引き続き実行されます。 デバッガーは再起動後もブレークポイントを保持します。 タスク シーケンスでは必要ない場合がありますが、デバッガーではユーザーの操作が必要であるため、続行するには Windows にサインインする必要があります。 デバッグを続行するために 1 時間後にサインインしない場合、タスク シーケンスは失敗します。

また、[タスク シーケンスの実行] ステップを使用して子 タスク シーケンス にステップインします。 デバッガー ウィンドウには、メイン タスク シーケンスと共に子タスク シーケンスの手順が表示されます。

既知の問題

複数のデプロイを通じて、通常の展開とデバッグの両方の展開を同じデバイスにターゲットとする場合、タスク シーケンス デバッガーが起動しない可能性があります。

関連項目