使用する
詳細なトラブルシューティングを実行するために、デバッグを使用できます。デバッガを使用して、リクエストハンドラまたはABAP汎用モジュールのコードの特定のセクションでエラーをチェックします。
基本的に、デバッグには2つの異なるタイプがあります。
-
従来のデバッグでは、コーディングの対応するポイントにブレークポイントを設定して、サーバー上の独自のユーザーセッション内で呼び出すプログラムを分析できます。
-
外部デバッグを使用すると、HTTPを使用して外部ユーザーによって呼び出されたプログラムを分析できます。外部デバッグの目的で、特別なブレークポイント(外部ブレークポイント)がターゲットサーバーに設定されます。
このセクションでは、特に外部デバッグについて説明します。これは、ICFプロセスを調査するときに、1つのステップで外部ユーザーを完全に(送信されたすべてのパラメーターを使用して)呼び出すことが一般的に理にかなっているためです。
前提条件
-
システム環境に負荷分散を使用する場合、デバッグを開始する前に、サーバーグループ(ログオングループ)が1つのサーバーに削減されます。
-
理想的には、デバッグを実行するユーザーは集合ユーザーであってはなりません。
活動
トランザクションSICFでは、外部デバッガーを使用して外部ブレークポイントを設定し、コードの関連セクションのデバッグを確認できます。
-
サービス階層で必要なサービスを選択します。
-
選択します。
-
必要なデータを入力します(以前にサービスを選択した場合は、システムがサービスパスを提案します)。
特定のパスについては、ABAPコーディングで直接外部ブレークポイントを設定することもできます。次のように実行します。
-
HTTPリクエストを実行するアプリケーションサーバーにログオンします。
-
Development WorkbenchトランザクションSE38、SE37、SE80などのいずれかで、
を選択します。 -
[ユーザー]で、HTTPアプリケーションを実行するときに使用するユーザーを入力します。
-
[外部ブレークポイントの設定/削除]ボタンを使用して、ABAPコードの必要な場所に外部ブレークポイントを配置します。
詳しくは
負荷分散でのデバッグについては、以下を参照してください。
外部デバッグの概念の詳細については、以下を参照してください。
従来のABAPデバッガ(クラシックおよび2プロセッサ)バリアントの詳細については、以下を参照してください。
トレースファイルを使用すると、デバッガーを使用したトラブルシューティングで目的の結果が得られない場合に、ICFランタイム(特にカーネル関数)を確認できます。トレース機能の詳細については、以下を参照してください。