Download PDF
Download page .NET Backend Detection.
.NET Backend Detection
The .NET Agent automatically detects many common backend types. Most backend types have a default discovery rule and a set of configurable properties. To revise backend discovery rules, see Backend Detection Rules and Exit Point Detection Rules.
For all other traffic transactions, see Business Transactions.
ADO.NET Backends
The .NET Agent automatically discovers ADO.NET data providers implementing standard Microsoft interfaces as database backends. See .NET Supported Environments.
Because the ADO.NET API is interface-based, AppDynamics instruments all ADO.NET database providers that implement these interfaces by default.
AppDynamics uses database identification information from the ADO.NET connection string. The connection string specifies the server address and schema, or the local file name. Most connection strings are formatted based on common rules that you can parse and distill to a database name. However because no standards exist for the connection string, the ADO.NET provider implementer determines the format.
For some providers, AppDynamics may fail to parse the connection string. In these cases, the .NET Agent uses the complete connection string minus any user password. The property is labeled ADO.NET connection string, and the value shows the connection string minus any user password.
For example, the .NET Agent names this database backend using the connection string pattern <datasource name>-<database name>
.\SQLEXPRESS-HowdyWorldDB
ADO.NET Configurable Properties
You can enable or disable the use of these properties for ADO.NET exit points:
Configurable Properties | Default Detection and Naming Property? | Description |
---|---|---|
| Yes | Data source or database server |
| Yes | Database name |
| No | Type of client-side ADO.NET library |
| No | Full connection string with password filtered out |
| No | Port number |
Directory Service Backends
The .NET Agent automatically discovers exit calls to directory services that use the System.DirectoryServices.Protocols (S.DS.P) libraries.
The agent names the backend for the server name. If the agent cannot derive the server name from the request, it then constructs a name using Domain Component (DC) values.
For example: activedirectory.example.com
HTTP Backends
AppDynamics automatically detects HTTP exit points (backends). See HTTP Backend Detection.
.NET Agent for Windows
For the .NET Agent for Windows, the default HTTP automatic discovery rule uses the URL property. From the enabled properties, AppDynamics derives a display name using the URL.
For example: http://api.example.com:8989/searchfares
.NET Agent for Linux
For the .NET Agent for Linux, the default HTTP automatic discovery rule for backends uses the host name and port number.
For example: http://api.example.com:8989/
HTTP Configurable Properties
For both Windows and Linux versions of the .NET Agent, you can enable or disable the use of these properties for HTTP exit points:
Configurable Properties | Default Detection and Naming Property? | Description | |
---|---|---|---|
.NET Agent for Windows | .NET Agent for Linux | ||
| No | Yes | HTTP host |
| No | Yes | HTTP port number |
| Yes | No | Full URL |
| No | Yes | HTTP parameters/query string |
Message Queue Backends
By default, AppDynamics automatically detects and identifies many message queue exit points. For a list of the supported message-oriented middleware products, see Supported Remote Service Detection for .NET.
The default queue automatic discovery rule uses the destination property to name the message queue backend.
For example: HowdyWorldQueue$\HWT_MQ_Server1_MsgQ
Message Queue Configurable Properties
This table list the properties used for queue exit points. However, each message-oriented product is different and there may be variations in the properties, or their names.
Configurable Properties | Default Detection and Naming Property? | Description |
---|---|---|
| No | Queue server name |
| Yes | Name of topic or queue |
| No | Queue or topic |
| No | Vendor from the client library |
For specific queue types, see:
MongoDB Backends
By default, the .NET Agent detects MongoDB exit calls for create, read, update, and delete (CRUD) operations using the C# and .NET MongoDB Driver versions: 1.10, 2.0, 2.2, and 2.4.
The default MongoDB automatic discovery rule uses the host, port, and database name to name the MongoDB backend.
For example: mymongohost.
27017.mymongodb
MongoDB Configurable Properties
You can configure the use of these properties for MongoDB exit points:
Configurable Properties | Default Detection and Naming Property? | Description |
---|---|---|
| Yes | MongoDB host |
Port | Yes | MongoDB port |
Database | Yes | MongoDB database name |
.NET Remoting
When an application uses .NET remoting, AppDynamics automatically detects and identifies remoting exit points (backends). See Enable Correlation for .NET Remoting to configure downstream correlation.
The default remoting automatic discovery rule uses the URL property.
For example: tcp://remoting.example.com:8648/MovieTicketBooking
.NET Remoting Configurable Properties
You can configure the use of this property for .NET Remoting exit points:
Configurable Properties | Default Detection and Naming Property? | Description |
---|---|---|
| Yes | Full URL |
WCF Backends
AppDynamics automatically detects and identifies WCF exit points (backends) when an application uses the WCF client library. The default WCF automatic discovery rule uses the remote address property. The agent uses the enabled properties to derive a display name using the remote address.
For example: http://wcf.example.com:8205/Services/Service1.svc
Agent Compatibility
This table describes the WCF backend detection support for each variant of the .NET Agent:
Agent and Version | WCF Backend Detection Support |
---|---|
.NET Agent for Windows (.NET Framework) | Fully supported |
.NET Agent for Linux >= 20.7.0 | Partially supported
|
.NET Agent for Windows (.NET Core) >= 21.3.0 |
WCF Configurable Properties
You can enable or disable the use of these properties for WCF exit points:
Configurable Properties | Default Detection and Naming Property? | Description |
---|---|---|
| Yes | URL minus the query, fragment, and user information (name and password) |
| No | WCF operation contract name |
Service Contract | No | WCF service contract name |
| No | Full URL |
| No | Host portion of URL |
| No | Port number if present in the URL; otherwise, protocol default |
| No | For web service calls, the SOAP action |
.NET Web Services Backends
When an application uses the Microsoft Web Services client library, AppDynamics automatically detects and identifies web services exit points (backends) by default. The default web services automatic discovery rule uses the URL property. From the enabled properties, AppDynamics derives a display name using the URL.
For example: http://webservice.example.com:8105/Services/Service1.asmx
Web Services Configurable Properties
You can enable or disable the use of these properties for Web Services exit points:
Configurable Properties | Default Detection and Naming Property? | Description |
---|---|---|
| No | Web service name |
| Yes | Full URL |
| No | Web service operation name |
| No | SOAP action |
Custom Exit Points
To monitor a backend that is not included in .NET Supported Environments, you can configure a custom exit point.
By default, you have to restart the instrumented application for instrumentation changes to take effect. You can enable Runtime Reinstrumentation for the .NET Agent to avoid having to restart your application and the AppDynamics.Agent.Coordinator
after instrumentation changes.