AppDynamics SAP Agent SAP Netweaver システムのセットアップ Current: カスタム ABAP コードのインストゥルメント化 PDF Download PDF Download page カスタム ABAP コードのインストゥルメント化. Current page All pages カスタム ABAP コードのインストゥルメント化 On this page: ABAP 言語は動的バイト コード インストゥルメンテーション(Java など)をサポートしていないため、実行時に任意の ABAP コマンドを代行受信することはできません(または、SAP で公式にはサポートされません)。 このセクションでは、自動インストゥルメンテーションがサポートされていない場合に便利な、手動の ABAP コード調整の手順について説明します。 このセクションでは、すでに検出されたビジネストランザクションの拡張についてのみ説明します。つまり、コードは既存のビジネストランザクションのコンテキストで実行する必要があります。そうでない場合は、モニタされません。 SAP GUI ダイアログトランザクションは、ログデータからビジネストランザクションに再構築されるため、実行時にビジネス トランザクション コンテキストは存在しません。 カスタム アクションカスタム ABAP コードのセクションのパフォーマンスデータ収集を有効にするには、/DVD/APPD_CL_RUNTIME クラスを使用してランタイム測定を開始および停止します。 * Start action runtime measurement /dvd/appd_cl_runtime=>action_start( iv_name = 'Custom action 1' ). * Custom ABAP code to be monitored .... * Stop action runtime measurement /dvd/appd_cl_runtime=>action_stop( ). CODE 上記のコードは、特定のアクションのコール数と合計ランタイムを収集します。これらのメトリックは、トランザクション スナップショットに保存されます(ランタイム順の上位 5 つのカスタムアクション)。 Ensure the action_stop( ) is always called for the monitored action:アクション中に例外が発生した場合は、CATCH セクションの action_stop( ) メソッドを呼び出して測定を停止します。アクションを中断し、action_stop( ) コールを回避する EXIT、RETURN、またはその他のコマンドがないことを確認します。ランタイム測定が適切に停止されない場合、パフォーマンスデータが収集されないか、誤って収集される可能性があります。カスタム RFC exit コールカスタム RFC コールの相関を有効にするには、次の例に示すように CALL FUNCTION ... DESTINATION 前後の ABAP コードを調整します。 * Declare local variable for AppD Correlation Header DATA: lv_appd_header TYPE STRING. * Start the exit call for function module and remote destination lv_appd_header = /dvd/appd_cl_agent_rfc=>client_before_rfc( iv_funcname = 'Z_MY_RFC_FUNCTION' iv_destination = 'MY_RFCDEST' ). * Custom RFC call CALL FUNCTION 'Z_MY_RFC_FUNCTION' DESTINATION 'MY_RFCDEST' EXPORTING iv_appd_header = lv_appd_header ... IMPORTING ... EXCEPTIONS ... . * Stop the exitcall /dvd/appd_cl_agent_rfc=>client_after_rfc( ). sy-subrc = /dvd/appd_cl_agent_rfc=>sv_subrc. "restore SY-SUBRC after the call CODE 上記のコードは、RFC バックエンドへの新しい exit コールを開始します。ターゲットシステムがインストゥルメント化された ABAP または Java システムの場合、相関情報が伝播され、ターゲットシステムでビジネストランザクションが続行されます。 ターゲットシステムが ABAP の場合、RFC 宛先に関連付けられているユーザ、または RFC コールを行うユーザは、ターゲットシステムで十分な権限を持っている必要があります。「SAP 認証」(auth. role /DVD/APPD_RFC_ABAP)を参照してください。 Java JCo Server で RFC exit コールが正常に動作するには、JCo プラグインバージョン 4.5.2002 以降の最初のインストール後に Java システムを再起動する必要があります。 カスタム RFC exit コールでは、次の RFC 宛先タイプのみがサポートされます。ABAP 接続(タイプ「3」宛先)TCP/IP 接続(タイプ「T」宛先)コードを拡張する前に、使用する宛先がサポートされている宛先タイプであることを確認してください。 ×