AppDynamics switched from Semantic Versioning to Calendar Versioning starting in February 2020 for some agents and March 2020 for the entire product suite.


    Skip to end of metadata
    Go to start of metadata

    Related pages:

    Your Rating:
    Results:
    1 Star2 Star3 Star4 Star5 Star
    17 rates

    This topic is a reference for the configuration properties for the .NET Agent that you set in the agent config.xml file. Some of these properties can be set using Windows System Environment Variables. See .NET Agent Environment Variables. For information about how to edit the file and apply your changes, see Administer the .NET Agent

     

    Reference of Environment Variables

    You can use environment variables in the agent config.xml file for node, tier, and application names. To include an environment variable, reference it by specifying %<variable>%, which can be combined with the other characters; for example, Web-%COMPUTERNAME" will be translated to Web-HOST23.


    AppDynamics Agent Element

    The appdynamics-agent element is the root container element for configurations in the config.xml.

    Required Element:

    <appdynamics-agent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

    Controller Element

    The controller element is a child of the appdynamics-agent element. It specifies the connection information for the AppDynamics Controller.

    (info) The .NET Agent configuration utility only supports the configuration of one Controller per server.

    Required Element: 

    <controller host="mycontroller.mycompany.com" port="8090" ssl="false" enable_tls12="false" high_availability="false" secure="false" enable_config_deployment="true"


    Controller host attribute

    The controller host attribute indicates the hostname or the IP address of the AppDynamics Controller. For an on-premises Controller, use the value for Application Server Host Name you provided when you installed the Controller. If you use the AppDynamics SaaS Controller, see the Welcome email from AppDynamics.

    Type: String
    Default: None
    Required: Yes

    Environment Variable: APPDYNAMICS.CONTROLLER.HOSTNAME

    Controller port attribute

    The controller port attribute specifies the HTTP or HTTPS port of the AppDynamics Controller. If the controller ssl attribute is set to true, specify the HTTPS port of the Controller; otherwise, specify the HTTP port.

    Type: Positive Integer
    Default: 8090

    • For On-premises installations, the defaults are port 8090 for HTTP and port 8181 for HTTPS.
    • For the SaaS Controller, use port 80 for HTTP or port 443 for HTTPS.

    Required: Yes

    Environment Variable: APDDYNAMICS.CONTROLLER.PORT

    Controller ssl attribute

    To enable encryption over SSL between the agent and the Controller, set the controller ssl attribute to true.

    Type: Boolean
    Default: false
    Required: No

    Environment Variable: APDDYNAMICS.CONTROLLER.SSL.ENABLED

    Controller enable TLS 1.2 attribute

    When you enable SSL, the agent secures communication to the Controller using the protocols set for ServicePointManager.SecurityProtocol in your application. Set the controller enable TLS 1.2 attribute to true to add TLS 1.2 as the first option in the list of protocols. This affects all secure communications from your application, not just requests to the AppDynamics Controller.

    Type: Boolean
    Default: false
    Required: No

    Controller high availability attribute

    If you have your Controller setup for high availability, set the controller high availability attribute to true.

    Type: Boolean
    Default: false
    Required: No

    Controller secure attribute

    If you set up the .NET Agent to encrypt credentials, the MSI installer package automatically sets the controller secure attribute to true. When controller secure is true, the .NET Agent ignores any credentials in the Account element or the Proxy element and uses the credentials from the Windows Credential Store. See Encrypt Credentials in .NET Agent Configuration

    Type: Boolean
    Default: false
    Required: No

    Controller enable config deployment attribute

    By default, the .NET Agent checks for configuration updates to the config.xml from the Controller. If you want to disable the agent from config.xml configuration files from the Controller set the controller enable config deployment attribute to false. See Manage Configuration for .NET

    Type: Boolean
    Default: true
    Required: No

    Controller Application Element

    The controller application element is a child of the controller element. It indicates the name of the logical business application you see in the Controller interface.

    The .NET Agent configuration utility only supports one business application per server. Use one of the following methods to support multiple applications:

    • Use tiers to organize different applications you instrument on a single server.
    • Or manually configure support for multiple business applications, see Configure Multiple Business Application Support for .NET
      (info) Multiple application support requires different configuration elements, including the <applications> container element.

    Required Element: <application name="MyDotNetApplication"/>

    Application name attribute

    Set the application name attribute to the business application you use in the Controller. If the application name does not exist, the Controller will create it when the agent registers. All instrumented applications in the config.xml register with the same business application in the Controller. See Overview of Application Monitoring

    Type: String, may also reference an environment variable. See Reference of Environment Variables
    Default: None
    Required: Yes

    Environment Variable: APPDYNAMICS_AGENT_APPLICATION_NAME

    (info) You specify a Tier for individual applications in the App Agents Element

    Account Element 

    The account element is a child of the controller element. If the AppDynamics Controller runs in multi-tenant mode or if you use the AppDynamics SaaS Controller, specify the account name. For single-tenant accounts the default account name is customer1. If you are using the AppDynamics SaaS Controller, the account name is provided in the Welcome email from AppDynamics.

    The agent requires to use your account access key as a password to authenticate with the Controller. For single-tenant accounts, you can view the access key in the Controller under Settings > LicenseIf you are using the AppDynamics SaaS Controller, the account access key is provided in the Welcome email from AppDynamics.

    Required Element: <account name="mycompany" password="myaccesskey"/>

    Account name attribute

    The account name attribute indicates the account name for the SaaS or multi-tenant Controller.

    Type: String
    Default: For single-tenant Controllers, the agent assumes the default of  customer1  if you do not specify an account name.
    Required: Only for SaaS or multi-tenant Controllers.

    Environment Variable: APPDYNAMICS.AGENT.ACCOUNTNAME

    Account password attribute

    The account password attribute indicates the account access key for the Controller.

    Type: String
    Default: None
    Required: Yes

    Environment Variable: APPDYNAMICS.AGENT.ACCOUNTACCESSKEY

    Proxy Element

    The proxy element is a child of the controller element. Use it to configure the connection to the Controller through a proxy server with no authentication.

    Optional Element: <proxy host="proxy-name" port="3128" enabled="true"/>

    Proxy host attribute

    The proxy host attribute indicates the proxy server hostname or IP address.

    Type: String
    Default: None
    Required: host is required for the proxy element

    Proxy port attribute

    The proxy port attribute indicates the proxy server port.

    Type: Positive Integer
    Default: None
    Required: port is required for the proxy element

    Proxy enabled attribute

    To enable Controller access through a proxy server, set the proxy enabled attribute to true.

    Type: Boolean
    Default: true
    Required: No

    Proxy - Authentication Element

    The authentication element is a child of the proxy element. Use the authentication element to enable proxy authentication and to supply the credentials for your proxy server. For environments where security policies require you to secure credentials stored on disk, you can encrypt the credentials and store them in the Windows Credential Manager.

    Optional Element: <authentication enabled="true" user_name="my_proxy_user" password="password" domain="my_windows_domain"/>

    Proxy authentication enabled attribute

    Set the proxy authentication enabled attribute to true to configure the agent to send credentials to a proxy server.

    Type: Boolean
    Default: false
    Required: No

    Proxy authentication username attribute

    The proxy authentication username attribute indicates the name of the proxy user.

    Type: String
    Default: None
    Required: The username attribute is required for the Authentication element

    Proxy authentication password attribute

    The proxy authentication password attribute indicates the password for the proxy user.

    Type: String
    Default: None
    Required: No

    Proxy authentication domain attribute

    The proxy authentication domain attribute specifies the domain or realm where the username is located. This could be the host computer name, an Active Directory domain or DNS domain.

    Type: String
    Default: None
    Required: No

    Sample Controller Configuration with Proxy Authentication enabled

    In this example, the agent accesses the controller through the proxy, myproxy.example.com using proxy authentication. The .NET Agent uses the credentials MyProxyUser@mydomain.com with password password to access the proxy server.


      <controller host="mycontroller.example.com">
        <application name="MyDotNetApplicaition" />
        <proxy host="myproxy.example.com" port="3128" enabled="true">
           <authentication enabled="true" user_name="MyProxyUser" password="password" domain="mydomain.com"/>
        </proxy>
      </controller>


    Machine Agent Element

    The machine-agent element is a child of the AppDynamics Agent element. An empty machine-agent element enables the default instrumentation for the .NET machine agent. See Monitor CLRs and Monitor IIS 

    Enable optional additional Microsoft Performance Counters or .NET Agent instrumentors as children of the Machine Agent element.

    Required Element: <machine-agent/>

    Machine Snapshot Element

    The machine-snapshot element is a child of the machine-agent element. Use it to tune the settings for machine snapshots in your environment. If you do not specify an attribute, the agent uses the default values for that attribute. See Machine Snapshots for .NET and Configure Machine Snapshots for .NET

    Optional Element: <machine-snapshot enabled="true" window-size="600" samples-per-window="60" violations-per-window="6" max-percent-cpu="80" max-percent-memory="80" max-queue-item-age="100" periodic-collection="600" />

    Machine Snapshot enabled attribute

    Set the machine-snapshot enabled attribute to false to disable machine snapshots.

    Type: Boolean
    Default: true
    Required: No


    Machine Snapshot window size attribute

    Specify the window size time range in seconds for the .NET Machine Agent to take samples. During a window, the agent takes samples and checks them for breached thresholds: max percent CPUmax percent memory, and max queue item age.

    Type: Integer
    Default: 600
    Required: No

    Machine Snapshot samples per window attribute

    Specify the number of samples the .NET Machine Agent takes during the specified window. For example, if the window size is 600 and the samples per window is 60, the agent takes a sample once every 10 seconds.

    Type: Integer
    Default: 60
    Required: No

    Machine Snapshot violations per window attribute

    When the .NET Machine Agent detects the number of violations per window for one threshold, it takes a snapshot. The agent only takes one snapshot per window for thresholds exceeded. For example, if violations per window is set to 6, and six samples show memory usage at 80% or greater, the agent takes a snapshot. The counters for each threshold are separate.

    Type: Integer
    Default: 6
    Required: No

    Machine Snapshot max percent memory attribute

    When the .NET Machine agent detects memory usage on the machine equals or exceeds the max percent memory value, it flags the sample as a violation. The minimum value is 20. The maximum value is 100.

    Type: Integer
    Default: 80
    Required: No

    Machine Snapshot max percent CPU attribute

    When the .NET Machine agent detects CPU usage on the machine equals or exceeds the max percent cpu value, it flags the sample as a violation. The minimum value is 20. The maximum value is 100.

    Type: Integer
    Default: 80
    Required: No

    Machine Snapshot max queue item age attribute

    When the .NET Machine agent detects the oldest item in the IIS queue equals or exceeds the max queue item age value in milliseconds, it flags the sample as a violation.

    Type: Integer
    Default: 100
    Required: No

    Machine Snapshot periodic collection attribute

    The .NET Machine agent takes one snapshot per periodic collection time range. Specify the value in seconds. The minimum is 60 seconds.

    Type: Integer
    Default: 600
    Required: No

    CLR Crash Reporting Element

    The clrcrash-reporting element is a child element of the machine-agent element. Use the clrcrash-reporting element to control whether or not the .NET Machine Agent reports CLR crash events to the Controller. See Monitor CLR Crashes

    Optional Element: <clrcrash-reporting enabled="true"/>

    CLR Crash Reporting enabled attribute

    Set the clrcrash-reporting enabled attribute to false to stop reporting CLR Crash events to the controller. 

    Type: Boolean
    Default: true
    Required: No

    Process Monitor Element

    The process-monitor element is a child element of the machine-agent element. By default, the agent enables process monitoring for all IIS processes.

    Optional Element: <process-monitor report-all-iis-processes="true"/>

    Process Monitor report all IIS processes attribute

    Set the report-all-iis-processes attribute to false to enable process monitoring only for instrumented IIS processes. 

    Type: Boolean
    Default: true
    Required: No

    Metrics Element

    The metrics element is a child element of the machine-agent element. By default, the machine agent registers a maximum of 200 metrics. Use the metrics element to increase the number of metrics the .NET Machine Agent can register. See Metrics Limits

    Use caution when increasing the metric registration limits. Increasing the limit can increase the resource overhead for agents and Controller.

    Optional Element: <metrics max-metrics="200"/>

    Metrics max-metrics attribute

    Specify the maximum number of metrics the .NET Machine Agent can register. 

    Type: Integer
    Default: 200
    Required: No

    Perf-metrics Element

    The perf-metrics element is a child element of the metrics element. By default, the machine agent collects and reports a full set of performance metrics. You can modify the priority level for the performance metrics to limit the metrics the agent collects and thereby decrease agent overhead. For a full list of metrics and their priorities, see Manage Windows Performance Metrics Optional Element: <perf-metrics priority-level="3">

    Perf-metrics priority-level attribute

    Specify the set of performance metrics for the machine agent to collect as follows:

    • 0 - disable metric collection
    • 1 - collect only high priority metrics
    • 2 - collect high and medium priority metrics
    • 3 - collect all metrics: high, medium, and low priority

    Type: Integer in the range 0 - 3
    Default: 3
    Required: If you use the perf-metrics element.

    Perf-metric Element

    The perf-metric element is a child element of the perf-metrics element. If you set the perf-metric priority to 0 to disable general collection of performance metrics, you can use the perf-metric element to enable individual performance metrics.  You cannot enable individual metrics with perf-metric priority greater than 0.

    Optional Element: <perf-metric name="<metric_path>"/>

    Perf-metric name attribute

    Specify the full path of the performance metric. See the example below for the % Busy metric and the Errors Unhandled During Execution metric.

    Type: String: metric path
    Default: N/A
    Required: If you use the perf-metric element.

    Sample Machine Agent Configuration with Individual Performance Metrics

    <machine-agent>
       <metrics>
    	<!-- Disable collection of performance metrics in general. -->
         <perf-metrics priority-level="0">
           <!-- Enable collection of individual performance metrics. -->
           <perf-metric name="Hardware Resources|CPU|%Busy"/>
           <perf-metric name="ASP.NET Applications|Errors Unhandled During Execution"/>
         </perf-metrics>
       </metrics>
     </machine-agent>


    Performance Counters Element

    The perf-counters element is a child of the machine-agent element. It is a container for all performance counters.

    Optional Element: <perf-counters>

    Performance Counter element

    The perf-counter element is a child of the perf-counters element. For a list of performance counters to enable, see Performance Counters in the .NET Framework

    Optional Element: <perf-counter cat="category" name="name" instance="instance"/>

    Performance Counter cat attribute

    The  perf-counter  cat attribute indicates the performance counter category.

    Type: String
    Default: None
    Required: Category is required for the perf-counter element.

    Performance Counter name attribute

    The perf-counter  name attribute indicates the performance counter name.

    Type: String
    Default: None
    Required: Name is required for the perf-counter element.

    Performance Counter instance attribute

    The perf-counter instance attribute is the performance counter instance value.

    Type: String
    Default: None
    Required: Instance is required for the perf-counter element.

    Sample Machine Agent Configuration with Performance Counters

      <machine-agent>
        <!-- Additional machine level Performance Counters -->
        <perf-counters>
          <perf-counter cat="Network Interface" name="Bytes Sent" instance="Local Area Connection"/>
        </perf-counters>
      </machine-agent>
    

    Instrumentation Element

    The instrumentation element is a child of the machine-agent element. It allows you to enable additional .NET Agent instrumentors such as thread correlation or correlation for .NET remoting.

    Optional Element: <instrumentation>

    Instrumentor Element

    The instrumentor element is a child of the instrumentation element. The instrumentor element specifies the .NET Agent instrumentor to implement.

    Optional Element: <instrumentor name="instrumentor name" enabled="true"/>/>

    Instrumentor name attribute

    The instrumentor name attribute indicates the instrumentor name.

    Type: String
    Default: None
    Required: Name is required for the Instrumentor element.

    Instrumentor enabled attribute

    Set the instrumentor enabled attribute to true to enable instrumentation.

    Type: Boolean
    Default: false
    Required: No.

    (info) The current configuration syntax is enabled="true". Versions prior to 3.7.8 used disabled="false".

    Sample Machine Agent Configuration with Thread Correlation Instrumentors

     <machine-agent>
        <!--Enable thread correlation-->
        <instrumentation>
          <instrumentor name="ThreadCorrelationThreadPoolCLR2Instrumentor" enabled="true"/>
          <instrumentor name="ThreadStartCLR2Instrumentor" enabled="true"/>
          <instrumentor name="ThreadStartCLR4Instrumentor" enabled="true"/>
        </instrumentation>
      </machine-agent>
    

    Additional .NET Agent Instrumentors

    App Agents Element

    The app-agents element is a child of the appdynamics agent element. It is a container for app agent configurations for IIS applications, Windows services, and standalone applications.

    Required Element: <app-agents enabled="true">

    App agents enabled attribute

    To disable application monitoring on the server, set the app-agents enabled attribute to false.

    Type: Boolean
    Default: true
    Required: No


    Default Profiler Element

    The default profiler element is a child of the app-agents element. It defines customizations to the default profiler behavior for all instrumented .NET applications on the machine: IIS applications, application pools, Windows services, and standalone applications.

    Optional Element: <profiler>

    Profiler - Disabled Features Element

    The disabled-features element is a child of the profiler element. Use this property to disable data collection mechanisms at the agent level for security or privacy reasons. This configuration overrides any configuration set by the Controller.

    Optional Element: <disabled-features value="NONE"/>

    Disabled features value attribute

    The disabled-features value attribute is a comma-separated list of features to disable. The available values are as follows:

    • LOG_PAYLOAD: Override the log-request-payload node property to suppress logging HTTP request payloads
    • RAW_SQL: Override the capture-raw-sql node property to suppress logging raw SQL output
    • CUSTOM_EXIT_SNAP_DATA: Suppress snapshot data from custom exits points
    • METHOD_INV_DATA_COLLECTOR: Suppress method invocation data collector user data
    • HTTP_DATA_COLLECTOR: Suppress HTTP request data collector user data
    • INFO_POINT: Suppress information point metrics
    • ALL: Disable all the available features
    • NONE: Don't disable features

    Type: String
    Default: NONE
    Required: No

    Profiler - Successful Exit Code Element

    The successful-exit-code element is a child of the profiler element.  The default successful exit code determines whether or not the agent flags a CLR restart event as graceful or not for Windows services or standalone applications. This configuration does not apply to IIS. 

    Optional Element: <successful-exit-code value="0"/>

    Successful exit code value attribute

    Type: Integer
    Default: 0
    Required: No

    Profiler - Runtime Reinstrumentation Element

    The runtime-reinstrumentation element is a child of the profiler element. Use this property to configure runtime reinstrumentation. See Configure Runtime Reinstrumentation for .NET

    Optional Element: <runtime-reinstrumentation enabled="true" interval="60000" optimize="true" />

    Runtime reinstrumentation enabled attribute

    Set to true to enable runtime reinstrumentation.

    Type: Boolean
    Default: false
    Required: No

    Runtime reinstrumentation interval attribute

    The frequency in milliseconds that the agent checks for configuration updates that initiate runtime reinstrumentation.

    Type: Integer
    Default: 60000 milliseconds
    Minimum: Because runtime reinstrumentation adds a small amount of system overhead, AppDynamics recommends a minimum interval of 1 minute or 60000 milliseconds.
    Required: No

    Sample Default Profiler Configuration

    <app-agents>
        <profiler>
          <disabled-features value="LOG_PAYLOAD,RAW_SQL,CUSTOM_EXIT_SNAP_DATA"/>
    	  <!-- Set the successful exit code for Windows services and standalone applications to "1." -->
          <successful-exit-code value="1"/>
          <!-- Enable Runtime reinstrumentation -->
          <runtime-reinstrumentation enabled="true" interval="60000" />
        </profiler>
    ...
    </app-agents>

    App Agents - IIS Element

    The IIS element is a child of the app-agents element. There are three options to configure IIS applications:

    • Automatic configuration
    • Application pool configuration
    • Application configuration

    The settings for any application pool apply to all applications within the app pool unless the individual application has a specific configuration.

    Explicit child-level configurations override parent-level configurations. Otherwise, children inherit parent configurations.

    Optional Element: <IIS>

    Exclude child applications attribute

    By default, when you instrument an IIS application, the .NET Agent instruments any child applications and assigns them to the same tier as the parent. To prevent the agent from automatically instrumenting child applications, set exclude-child-applications to true. For instance: <IIS exclude-child-applications="true">

    If you disable instrumentation for child applications in general, you can instrument-specific child applications using the IIS Application element.

    Type: Boolean
    Default: false
    Required: No

    IIS Automatic Instrumentation Element

    The automatic element is a child of the IIS element. Use the automatic element to enable or disable automatic instrumentation for all IIS apps. You can configure automatic instrumentation and manual instrumentation both. Manual configurations override automatic ones.

    Optional Element: <automatic enabled="false" />

    Automatic enabled attribute

    Set the automatic enabled attribute to true to enable instrumentation for all IIS applications. This is the default setting if you use the .NET Agent Configuration Utility automatic configuration option. To disable automatic instrumentation for all IIS applications, set the value to false.

    Type: Boolean
    Default: true
    Required: No

    IIS Application name enabled attribute

    By default, the agent does not report an IIS application name. To view the IIS application name in the CLR metadata, set the iis-application-name-enabled attribute to true. For example, <automatic iis-application-name-enabled="true" />. When enabled, the name appears as the iis-application-name value in the CLR metadata.

    Type: Boolean
    Default: false
    Required: No

    IIS Application Pools Element

    The IIS application pools element is a child of the IIS element. It is a container element for all the IIS application pools you configure for instrumentation.
    Optional Element: <application-pools>

    IIS Application Pool Element

    The application-pool element is a child of the application-pools element. You may have multiple application pool elements distinguished by the name attribute. Use the application pool element to configure the app agent for all applications within an application pool. For more information on IIS application pools, see Managing Application Pools in IIS

    (warning) Application-specific configurations in the IIS Applications element override application pool configurations.

    Optional Element: <application-pool name="DefaultAppPool" enabled="false">

    Application pool name attribute

    The application-pool name attribute indicates the name of the IIS Application Pool.

    Type: String
    Default: None
    Required: Name is required for the application-pool element.

    Application pool enabled attribute

    Set the application-pool enabled attribute to false to disable instrumentation for all applications in the application pool. Set the value to true to instrument all applications in the application pool.

    Type: Boolean
    Default: None. Defaults to true if not specified.
    Required: No

    Application Pool Tier Element

    The tier element is a child of the application-pool element. If you enable instrumentation for an application pool, you must use a tier element to assign the applications of a pool to a tier in the Controller. See Overview of Application Monitoring

    Required Element: <tier name="Inventory" />

    Tier name attribute

    Use the tier name attribute to specify the tier.

    Type: String, may also reference an environment variable. See Reference of Environment Variables
    Default: None
    Required: Yes

    IIS Applications Element

    The IIS applications element is a child of the IIS element. It is a container element for all the IIS applications you configure for instrumentation.
    Optional Element: <applications>

    Application Element

    The application element is a child of the applications element. Use multiple application elements to instrument different sites and applications. To learn more about IIS sites and applications, see Understanding Sites, Applications, and Virtual Directories on IIS 7 and Above

    Optional Element: <application path="/" site="FirstSite" port="8008"site-regex="false">

    Application site attribute

    The application site attribute indicates the root site in IIS for the application. The site name accepts a regular expression for cases like Windows Azure where you may only know a partial site name. If you use a regular expression, set the Application site-regex attribute to true.

    Type: String
    Default: None
    Required: The site is required for the Application element.

    Application site-regex attribute

    Set the application site-regex attribute to true to treat the value of the Application site attribute as a regular expression.

    Type: Boolean
    Default: false
    Required: No

    Application path attribute

    The application path attribute indicates the path of the application, relative to the root site. Use the forward slash to indicate the root site and instrument all children applications. Use the path to an application to instrument the specific application and any children.

    For example, Site1 hosts two applications AppX and AppY. To instrument Site 1, AppY and AppZ, set the path to "/". To instrument AppY, but not AppZ, set the path to /AppY.

    Type: String
    Default: /
    Required: path is required for the application element.

    Application port attribute

    For cases where two or more sites in IIS 6 have the same site name, set the site port attribute to differentiate between the sites.

    Type: Positive Integer
    Default: None
    Required: No

    Application enabled attribute

    In certain cases you may want to enable instrumentation for a parent application, but disable it for a child application. In this case create an application element for the child application to disable and set the application enabled attribute to false.

    Type: Boolean
    Default: true
    Required: No

    Application Tier Element

    The tier element is a child of the application element. If you enable instrumentation for an application, you must use a tier element to assign the application to a tier in the Controller. See Overview of Application Monitoring

    Required Element: <tier name="Consumer" />

    Tier name attribute

    The tier name attribute indicates the business application tier.

    Type: String, may also reference an environment variable. See Reference of Environment Variables
    Default: None
    Required: Yes

    Sample IIS Application Configuration

        <IIS>
          <!-- Automatic instruments all IIS applications when enabled. -->
          <automatic enabled="false" />
    
          <!-- Application Pool agent configurations -->
          <application-pools>
            <!-- Do not instrument applications in DefaultAppPool when "enabled" attribute is set to false. -->
            <application-pool name="DefaultAppPool" enabled="false">
              <tier name="Tier Name"/>
            </application-pool>
    
            <!-- Instrument applications in the OtherAppPpool and assign them to the Inventory tier. -->
            <application-pool name="OtherAppPool">
              <tier name="Inventory"/>
            </application-pool>
          </application-pools>
          <applications>
            <!-- Instrument all applications in the First Site. -->
            <application path="/" site="FirstSite">
              <tier name="Order"/>
            </application>
            <!-- Instrument the /app application and child apps in the Second Site -->
            <!-- but not the root Second Site application. -->
            <application path="/app" site="SecondSite">
              <tier name="Consumer"/>
            </application>
            <!-- Regular expression for site name -->
            <!-- assigns all sites beginning with "MyRole" to the Credit Services tier. -->
            <application path="/" site="MyRole_\w+" site-regex="true">
                <tier name="Credit Services"/>
            </application>
            
          </applications>
        </IIS>
    

    App Agents - Standalone Applications Element

    The standalone-applications element is a child of the app-agents element. It is a container element for all the Windows services and standalone applications you configure for instrumentation. See Configure the .NET Agent for Windows Services and Standalone Applications

    Optional Element: <standalone-applications>

    Standalone Application Element

    The standalone-application element is a child of the standalone-applications element. It specifies a Windows service or standalone application to instrument.

    Optional Element: <standalone-application executable="MyWindowsApplication.exe" command-line="">

    Standalone Application executable attribute

    The standalone-application executable attribute specifies the file name of the Windows application to instrument. Set the Standalone Application element executable attribute to one of the following:

    • Executable name: for example, MyStandaloneApp.exe or MyWindowsService.exe. The file extension is optional, so MyStandaloneApp also works.

    • Full path to the executable: for example, C:\Program Files\MyApplication\MyStandaloneApp.exe
    • Partial path to the executable: for example, MyApplication\MyStandaloneApp.exe. Use the full or partial path to the executable when you want to assign different tiers to separate instances of the same executable running from different paths.

    Type: String
    Default: None
    Required: Yes

    Standalone Application command-line attribute

    To differentiate between two instances of the same executable, specify any unique portion of the application command line, such as an argument, in the standalone-application command-line attribute.

    Type: String
    Default: None
    Required: No

    Standalone application app-domain-name attribute

    For applications with multiple application domains, the app-domain-name attribute enables you to limit instrumentation to specific application domains. See Configure Application Domain Monitoring

    Type: String
    Default: None
    Required: No

    Standalone Application Tier Element

    The tier element is a child of the standalone-application element. If you enable instrumentation for an application, you must use a tier element to assign the application to a tier in the Controller. See Overview of Application Monitoring

    Required Element: <tier name="Consumer" />

    Tier name attribute

    The tier name attribute indicates the business application tier.

    Type: String, may also reference an environment variable. See Reference of Environment Variables
    Default: None
    Required: Yes

    Environment Variable: APPDYNAMICS_AGENT_TIER_NAME

    Sample Windows Service and Standalone Application Configuration

        <standalone-applications>
          <standalone-application executable="ExampleApplication.exe">
            <tier name="Standalone Application Tier"/>
          </standalone-application>
          <!-- Instrument a Windows service using arguments. -->
          <!-- The following example matches the command "MyWindowsService.exe -d -x -r". -->
          <standalone-application executable="MyWindowsService.exe" command-line="-x">
            <tier name="Windows Service Tier"/>
          </standalone-application>
        </standalone-applications>