By default, the AppDynamics .NET Agent names ASP.NET transactions based upon the URI.

For ASP.NET Core on the full framework, the agent uses MVC area, Controller, and action naming by default, and can also be configured to use the URI.

This topic describes the MVC transaction naming configuration options for both ASP.NET and ASP.NET Core on the full framework.

For transactions using the MVC naming conventions, the automatic transaction detection configuration settings apply to the MVC segments, not to the URI.

MVC Transaction Naming Overview

For some MVC applications, URI-based naming may not produce meaningful business transaction names. Depending on the URI scheme, it might create many business transactions, pushing you quickly over your business transaction limit and causing most traffic to fall into the All other traffic business transaction.

For example, consider an MVC application that indicates store locations in the URL as the result of a city location search, such as the following sample URL: 

http://myapp.mycompany.com/Bellevue

Based on this URL, AppDynamics registers a business transaction named /Bellevue. Each search result with a unique city would similarly generate a unique business transaction.  

Alternatively, you can configure the agent to identify transactions by the area, Controller, or action name. After you configure the agent to name transactions by Controller and action, the agent identifies the business transaction based on the Controller and action name, in this case, Search/Results.

In this example, the new business transaction combines search requests for all cities into one transaction, resulting in a more logical unit for measuring application performance.

Similarly, if your application uses areas to logically group Controllers, you can configure the use of area name in the business transaction.

For background information on ASP.NET Routing, see the following Microsoft Developer Network article: msdn.microsoft.com/en-us/library/cc668201.aspx

Configure Node Properties for MVC Transactions

You can configure custom MVC transaction naming using node properties. This table describes how to configure node properties for MVC transactions based on the type of entry point.

The node property supports: MVC 3, MVC 4, and WebAPI transactions.

Type of Entry PointName Business TransactionsTransaction Naming Configuration

ASP.NET hosted in IIS
(aspdotnet-mvc-)

To name business transactions using the Controller and Action values

Register the aspdotnet-mvc-naming-controlleraction node property with a value = true

To name business transactions using the Area and Controller values

Register the aspdotnet-mvc-naming-controllerarea node property with a value = true

To include all three component values (Controller, Action, and Area) in business transaction names
  1. Register both node properties
  2. Configure the ASP.NET transaction naming to use three URI segments instead of two (default)

See Automatic Transaction Discovery Rules.

ASP.NET Core on the Full Framework
(aspdotnet-core-)


To name business transactions using the URIRegister both of these node properties with a value = false
  • aspdotnet-core-naming-controllerarea ** 
  • aspdotnet-core-naming-controlleraction 
To omit the Area value from your transaction names

Register the aspdotnet-core-naming-controllerarea node property with a value = false

.NET Agent for LinuxTo use MVC Area, Controller, URI, and Action in business transactions nameRegister the aspdotnet-mvc-naming-controlleraction node property with a value =  true

To register a new node property, see App Agent Node Properties.

After you modify any transaction naming configuration, and traffic to the previously registered business transactions terminates, you can delete the old business transactions.