AppDynamics uses different types of transaction detection rules to define entry points and name business transactions:
- Automatic transaction discovery rules include the default entry point types and naming configuration for each app agent type.
- Custom match rules offer finer control over transaction discovery and naming for a single entry point type.
In many cases the built-in rules yield a useful set of business transactions. If not, you can create new rules or edit the existing rules to optimize the transaction detection for your environment.
For Java and .NET environments, you can use interactive live preview tools to find business transaction entry points:
Business transaction discovery sessions display transactions based on all transaction detection rules active for the node.
- For certain types of entry points, custom match rule live preview lets you preview transactions based on the application of a single transaction detection rule on a node.
Business transactions within the context of the Live Preview, called transient transactions, do not persist after the Live Preview ends. Business transaction discovery sessions let you apply or discard rule changes when you end the session. Custom match rule live preview rules apply after you save the rule.
Some transient transactions may invoke exit calls to the same node where the Live Preview session is running. In certain cases, the agent may discover additional transient transactions and uninstrumented code on the downstream segment:
- The exit call and corresponding entry point are automatically discovered exit and entry points like HTTP or Web Service.
- Rare cases of custom activity in-process calls.
Manage Transaction Detection Rules
To customize transaction detection rules in the Controller UI, go to Configuration > Instrumentation.
From the Business Transactions list, click Configure to quickly access Transaction Detection settings.
You apply transaction detection rules to tiers using the flexible scope configuration model. From the Transaction Detection tab, you can manage rules as follows:
- Manage rules for individual scopes on the Scopes sub-tab.
- Manage rules application-wide on the Rules sub-tab. The Rules sub-tab also shows you the tiers where rules are applied and according to which scope.
- View or modify the rules for specific tiers on the Tiers sub-tab.
If you want to modify an existing rule, you can double-click it to display the Rule Editor. Click +/Add to define a new rule.
The Live Preview button lets you start a Business Transaction Discovery session for nodes running the Java and .NET Agent. Business transaction discovery sessions stream live data from the node to the Controller UI to help you make instrumentation decisions.
If you upgraded your business application to AppDynamics 4.3, you can view and customize transaction detection rules for existing business applications using the legacy hierarchical configuration model.
Transaction Detection Rule Priorities
AppDynamics app agents apply transaction detection rules of the same type in the following order of precedence:
- Rule priority from highest to lowest. A priority of 0 is the lowest priority possible.
- Creation date from oldest to newest.
For example, consider an HTTP request that matches a priority 2 custom match rule and a priority 6 custom match rule. The agent applies the priority 6 rule.
When an incoming request matches more than one type of detection rule, AppDynamics applies the detection rules in the following order of precedence:
- Custom match include rules according to the include rule priority. If the request matches an include rule, the agent names the business transaction based on the rule.
Custom match exclude rules according to the exclude rule priority. If the request matches an exclude rule, the app agent excludes the transaction from discovery.
Default automatic detection rules. If the request matches a default automatic detection rule, it names the transaction according to the auto-detection naming scheme.
To view the view the default order that the agent applies transaction detection rules for a tier, navigate to Configuration > Instrumentation > Transaction Detection > Tiers. Click a tier to see the rules ordered by precedence and priority.
For Java and .NET, you can set the
check-bt-excludes-early node property to "true" to configure the app agent to evaluate custom match exclude rules before custom match include rules. This is a node-based configuration and won't affect the display order of rules in the Controller UI.
Export Detection Rules
You can migrate the rules between applications and tiers using the Controller API. For more information, see Configuration Import and Export API.