別々のビジネストランザクションへのマッチの分割

トランザクションのマッチングだけが構成されている場合、マッチルールで一致したすべてのリクエストがカスタムビジネストランザクションに属します。または、リクエストの基準に基づいて複数の名前付きビジネストランザクションを生成するマッチルールを作成できます。

たとえば、次の構成では、スーパークラスで一致するカスタムマッチルールを定義します。この例では、エントリポイントは、com.acme.AbstractProcessor スーパークラスを拡張するクラスで定義された process() メソッドと一致します。スーパークラスはサブクラス SalesProcessorInventoryProcessorBacklogProcessor によって拡張されます。

  1. スーパークラスと一致するカスタムルールを作成すると、これらのすべてのサブクラスと一致します
  2. トランザクションをクラス名で分割すると、それぞれのサブクラスに対して個別のビジネストランザクションを作成できます。AppDynamics は、マッチルール名をクラス名の先頭に追加することで、トランザクションにクラス名を含む名前を付けます。たとえば、Process.SalesProcessorProcess.InventoryProcessorProcess.BacklogProcessor です。

パラメータ値が、アプリケーションのビジネストランザクションにとって意味のある識別子になるものを含んでいる可能性があります。たとえば、次のメソッドの jobType パラメータに SalesInventory、または Backlog の値があるとします。

public void process(String jobType,String otherParameters...)

メソッドの署名におけるパラメータのゼロベースの位置(例では 0)を示すことによって、パラメータ値に基づいてトランザクションを分割できます。

toString() の詳細については、「Getter チェーンの使用」を参照してください。ダイアログに示すように、スレッド ID、メソッド名、クラス名などの他のトランザクション分割基準を使用することもできます。

ルールの名前が、動的に生成された名前の先頭に付けられ、ビジネストランザクション名を形成します。