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
    27 rates

    This page describes the Agent configuration properties, including controller-info.xml elements, system property options (on the command line or in the startup script), and environment variables (where applicable). You configure Agent system properties based on your operating system and installation package.

    The Agent updates dynamically in response to Agent configuration property changes, so you do not need to restart the Agent. 

    System Property Syntax

    • System properties are case-sensitive
    • Values that contain spaces must be enclosed with double-quotes

    Reference

    .NET Compatibility Mode

    You must enable this mode if you want to collect and view Machine or Server metrics on a server with Machine and .NET Agents installed. See .NET Compatibility Mode

    Element in controller-info.xml: <dotnet-compatibility-mode>

    System Property: 

    -Dappdynamics.machine.agent.dotnetCompatibilityMode

    Environment Variable: N/A

    Type: boolean

    Default: false

    Required: This mode is required if you want to collect and view Machine or Server metrics on a server with Machine and .NET Agents installed.

    Account Access Key

    The account access key used to authenticate with the Controller. This key is generated during installation, and you can locate the key by reviewing the license information in the Controller Settings. See License Management

    Element in controller-info.xml:  <account-access-key>

    System Property: -Dappdynamics.agent.accountAccessKey

    Environment Variable: APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY

    Type: String

    Default: None

    Required: Prior to version 4.1, this property was required only for SaaS and multi-tenant Controllers. For versions 4.1 and later, the account access key property is required to authenticate all agent to Controller communications.

    Example: -Dappdynamics.agent.accountAccessKey=165e65645-95c1-40e3-9576-6a1424de9625


    Account Name

    The account name used to authenticate with the Controller. If you are using the AppDynamics SaaS Controller, the Account Name is provided in the Welcome email sent by AppDynamics.

    Element in controller-info.xml:  <account-name>

    System Property: -Dappdynamics.agent.accountName

    Environment Variable: APPDYNAMICS_AGENT_ACCOUNT_NAME

    Type: String

    Default: None

    Required: For AppDynamics SaaS Controller and multi-tenant users, but not for single-tenant mode (the default). When the Agent is registered with an AppDynamics SaaS Controller, features used to run Remediation Scripts are disabled. If you reconfigure the Agent controller-info.xml to register with a non-SaaS or on-premises Controller, the Agent can run local scripts as usual.

    Agent Logging Directory

    Deprecated. appdynamics.agent.logs.dir should be used instead. Behavior identical to Agent Logs Directory: <appdynamics.agent.logs.dir>/logs/.

    System Property: -Dappdynamics.agent.logging.dir

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No

    Agent Logs Directory

    Sets the logs directory for log files for nodes that use this agent installation. If this property is specified, all agent logs are written to <appdynamics.agent.logs.dir>/logs. See Deploy Multiple Machine Agents From a Common Directory when deploying multiple Machine Agents from a common directory. This property overrides the directory specified through the appdynamics.agent.runtime.dir. If appdynamics.agent.logs.dir property is not provided, the logs directory will be created on the same level as the Machine Agent installation folder. No changes are expected in log4j.xml file.

    System Property: -Dappdynamics.agent.logs.dir

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No

    Agent Runtime Directory

    Sets the runtime directory for all runtime files (such as logs) for nodes that use this Agent installation. If you specify this property, then all Agent logs are written to <agent-runtime-dir>/logs/node-name. Use when deploying multiple Machine Agents from a common directory. See Deploy Multiple Machine Agents From a Common Directory

    System Property: -Dappdynamics.agent.runtime.dir

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No

    Container Process Selector Blacklist Regex

    Any container with a process matching this regex is ignored and is not registered in the Controller.

    System Property: -Dappdynamics.docker.container.process.selector.blacklist.regex

    Environment Variable: APPDYNAMICS_DOCKER_CONTAINER_PROCESS_SELECTOR_BLACKLIST_REGEX

    Type: String

    Default: None

    Required: No

    Controller Host

    This is the host name or IP address of the AppDynamics Controller, for example: 192.168.1.22 or myhost or myhost.abc.com. This is the same host used to access the AppDynamics browser-based user interface.

    Element in controller-info.xml:  <controller-host>

    System Property: -Dappdynamics.controller.hostName

    Environment Variable: APPDYNAMICS_CONTROLLER_HOST_NAME

    Type: String

    Default: None

    Required: If the Enable Orchestration property is false.
    If Enable Orchestration is true, and if the Agent is deployed in a compute cloud instance created by an AppDynamics workflow, do not set the Controller host unless you want to override the auto-detected value. See Enable Orchestration Property

    Controller Keystore Filename 

    By default, the Agent looks for a Java truststore file named cacerts.jks in the conf directory in the Agent home. Use this property to enable full validation of Controller SSL certificates with a different Java truststore file. See Enable SSL for the Standalone Machine Agent

    Element in controller-info.xml:  <controller-keystore-filename>

    System Property: N/A

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No

    Controller Keystore Password 

    The plain text or encrypted value of the Controller certificate password. To encrypt or obfuscate passwords, see Encrypt Agent Credentials

    Element in controller-info.xml: <controller-keystore-password>

    System Property: N/A

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No

    Controller Port

    The HTTP(S) port of the AppDynamics Controller. This is the same port that you use to access the AppDynamics browser-based user interface. If the Controller SSL Enabled property is set to true, specify the HTTPS port of the Controller; otherwise, specify the HTTP port. See Controller SSL Enabled Property

    Element in controller-info.xml:  <controller-port>

    System Property: -Dappdynamics.controller.port

    Environment Variable: APPDYNAMICS_CONTROLLER_PORT

    Type: Positive Integer

    On-premises Default: port 8090 for HTTP and port 8181 for HTTPS

    SaaS Default: For the SaaS Controller Service, use port 443 for HTTPS connections.

    Required: If the Enable Orchestration property is false.

    If Enable Orchestration is true, and if the Agent is deployed in a compute cloud instance created by an AppDynamics workflow, do not set the Controller port unless you want to override the auto-detected value. See Enable Orchestration Property

    Controller SSL Enabled 

    Specifies whether the Agent should use SSL (HTTPS) to connect to the Controller. If SSL Enabled is true, set the Controller Port property to the HTTPS port of the Controller. See Controller Port Property

    Element in controller-info.xml:  <controller-ssl-enabled>

    System Property: -Dappdynamics.controller.ssl.enabled

    Environment Variable: APPDYNAMICS_CONTROLLER_SSL_ENABLED

    Type: Boolean

    Default: false

    Required: No

    Create Node if Absent

    Force the Machine Agent to create an APM node when the Agent registers with the Controller. 

    Element in controller-info.xml: <create-node-if-absent>

    System Property: -Dappdynamics.machine.agent.registration.createNodeIfAbsent

    Environment Variable: N/A

    Type: Boolean

    Default: true

    Required: No. If you set the app/tier/node in your controller-info.xml file (existing upgrades or by accident), you can prevent the Machine Agent from creating APM nodes by setting this flag to false. See Machine Agent Installation Scenarios

    Enable Docker Visibility 

    To enable Docker Visibility on the Agent, manually add the docker-enabled element in controller-info.xml setting, and set the flag to true

    Element in controller-info.xml: <docker-enabled>true</docker-enabled>

    System Property: -Dappdynamics.docker.enabled

    Environment Variable: APPDYNAMICS_DOCKER_ENABLED

    Type: Boolean

    Default: false

    Required: Yes

    Enable HTTP Listener

    When set to true, this property enables the Machine Agent HTTP listener. You can send metrics to the Machine Agent using its HTTP listener. You can report metrics through the Machine Agent by making HTTP calls to the Agent instead of piping to the Agent through sysout.

    Element in controller-info.xml: N/A

    System Property: -Dmetric.http.listener

    Environment Variable: N/A

    Type: Boolean

    Default: false

    Required: No

    Enable Orchestration

    Enables the Machine Agent workflow task execution when set to true. It also enables auto-detection of the Controller host and port when the app server is a compute cloud instance created by an AppDynamics orchestration workflow. In a cloud computing environment, auto-detection is necessary for the Create Machine tasks in the workflow to run correctly. The Machine Agent polls for task executions only when orchestration is enabled. If the host machine on which this Agent resides is not created through AppDynamics workflow orchestration, this property should be set to false. See Controller Host Property and Controller Port Property

    Element in controller-info.xml:  <enable-orchestration>

    System Property: N/A

    Environment Variable: N/A

    Type: Boolean

    Default: false

    Required: No


    Force Default SSL Certificate Validation 

    Used to override the default behavior for SSL validation.

    This property has three states:

    true: Forces the Agent to perform full validation of the certificate sent by the Controller, enabling the Agent to enforce the SSL trust chain. Use this setting when a public certificate authority(CA) signs your Controller SSL certificate.

    false: Forces the Agent to perform minimal validation of the certificate. This property disables full validation of the Controller's SSL certificate. Use this setting when full validation of a SaaS certificate fails.

    unspecified: The validation performed by the Agent depends on the context:

      • If the Agent is connecting to a SaaS Controller, full validation is performed.
      • If the Agent is connecting to an on-premises Controller and the cacerts.jks file is present, then full validation is performed using the cacerts.jks file.
      • If the Agent is connecting to an on-premises Controller, and there is no cacerts.jks file, then minimal validation is performed 

    Element in controller-info.xml: N/A

    System Property: -Dappdynamics.force.default.ssl.certificate.validation

    Environment Variable: N/A

    Type: Boolean

    Default: None

    Required: No

    Enable Dynamic Monitoring Mode (DMM)

    When this option is enabled, the Agent reports metrics based on the Dynamic Monitoring Mode specified for that Agent in the Controller. When this option is disabled, the Agent reports all metrics based on its local configuration; DMM settings on the Controller have no effect. Disabling DMM on an Agent is recommended only for mission-critical servers and other machines for which you are sure you want to collect all available metrics at all times. See Dynamic Monitoring Mode and Server Visibility

    Element in controller-info.xml: <dynamic-monitoring-enabled>

    System Property: appdynamics.machine.agent.dynamicMonitoring.enabled

    Environment Variable: APPDYNAMICS_DYNAMIC_MONITORING_ENABLED

    Type: Boolean

    On-premises Default: True

    SaaS Default: True

    Required: No


    HTTP Listener Port

    To enable the Machine Agent HTTP listener, you must also specify the HTTP listener port.

    Element in controller-info.xml: N/A

    System Property: -Dmetric.http.listener.port

    Environment Variable: N/A

    Type: Numeric

    Default: 8293

    Required: Only if the HTTP listener is enabled.

    Log4j

    Logging functionality is done via Apache Log4j2. Use this property to provide a custom location for log4j configuration. In this case, you need to ensure that all file destinations are valid and contain absolute paths.

    Element in controller-info.xml: N/A

    System Property: -Dlog4j.configurationFile

    Environment Variable: N/A

    Type: Numeric

    Default: None

    Required: No

    Machine Hierarchy

    You need a Server Visibility license to use this feature.

    This setting enables you to group servers together into arbitrary hierarchies by specifying a hierarchical path to the server. The server hierarchy displays in the Metric Browser and on the Server Dashboard. The server hierarchy is also used to select subgroups of machines for health rules. The last element of the path indicates the server name (a name of your choice). This name appears as the Name on the Servers list. If the path contains spaces, then you must it enclose it in double-quotes. See Machine Agent Hierarchy

    Element in controller-info.xml: <machine-path>

    System Property: -Dappdynamics.machine.agent.hierarchyPath

    Environment Variable: APPDYNAMICS_MACHINE_HIERARCHY_PATH

    Type: ASCII string with path elements that are separated by a "|" (bar). 

    Default: The value specified by Unique Host ID. If the last part of the machine hierarchy is empty, the Unique Host ID is the machine name. For example, if machine hierarchy is "Data Center 1|Rack 2|" and Unique host ID is "Host ID 3", then the machine hierarchy will become "Data Center 1|Rack 2|Host ID 3".

    Required: No

    Limitation: The length of the characters composing the machine-path up to, but not including, the last pipe cannot exceed 95 characters.

    Examples:

    • System Properties: -Dappdynamics.machine.agent.hierarchyPath= "Data Center 1|Rack 2|Machine3"
    • controller-info.xml: 

      <machine-path>
           "Data Center 1|Rack 2|Machine3"
      </machine-path>
    • Environment Variable: APPDYNAMICS_MACHINE_HIERARCHY_PATH="Data Center 1|Rack 2|Machine3


    Proxy Host 

    The proxy host name or IP address. Proxy authentication cannot be used with SSL. 

    Element in controller-info.xml: N/A

    System Property: 

    -Dappdynamics.http.proxyHost

    -Dappdynamics.https.proxyHost (Use if the Agent is communicating with the Controller over SSL. Proxy authentication cannot be used with SSL.)

    Environment Variable: N/A

    Type: String

    Default: None

    Required: If using a proxy to connect to the Controller; otherwise this is not required.

    Proxy Password File 

    The absolute path to the file containing the password of the user that is authenticated by the proxy host. The password must be the first line of the file and must be in clear (unencrypted) text. See Encrypt Agent Credentials

    Element in controller-info.xml: N/A

    System Property: -Dappdynamics.http.proxyPasswordFile

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No

    Example: -Dappdynamics.http.proxyPasswordFile=/path/to/file-with-password

    Proxy Port

    The proxy HTTP(S) port. The default ports are 8090 (HTTP) and 443 (HTTPS). 

    Element in controller-info.xml: N/A

    System Property: 

    -Dappdynamics.http.proxyPort

    -Dappdynamics.https.proxyPort (Use if the agent is communicating with the Controller over SSL. Proxy authentication cannot be used with SSL.)

    Environment Variable: N/A

    Type: Positive Integer

    Default: None

    Required: Yes, if using a proxy to connect to the Controller. Otherwise, no.

    Proxy User Name 

    The name of the user that is authenticated by the proxy host.

    Element in controller-info.xml: N/A

    System Property: -Dappdynamics.http.proxyUser

    Environment Variable: N/A

    Type: String

    Default: None

    Required: No


    Server Visibility Enabled

    Enable Server Visibility on the Agent. This requires a Server Visibility license.

    Element in controller-info.xml:  <sim-enabled>

    System Property: -Dappdynamics.sim.enabled

    Environment Variable: APPDYNAMICS_SIM_ENABLED

    Type: Boolean

    Default: false

    Required: Required to enable Server Visibility. See Enable Server Visibility.

    Service Availability Update Interval

    This setting controls the time, in milliseconds, to wait between sending Service Availability periodic events to the Controller. See Service Availability

    Element in controller-info.xml: <sam-event-update-interval-millis>

    System Property: -Dappdynamics.machine.agent.sam.event.updateIntervalMillis

    Environment Variable: N/A

    Type: Positive integer

    Default: 300000 ms (5 minutes)

    Required: No

    Unique Host ID

    This property logically partitions a single physical host or virtual machine. In the context of installing the Machine Agent, the unique Host ID property is not required. However, if you do not define a unique Host ID, then the Machine Agent uses the Java API to retrieve the host ID. The results from the API can be inconsistent, and may cause the same JVM to return a different value for the same machine, each time the Machine Agent is restarted. To avoid these issues, AppDynamics recommends that you set the value of unique Host ID to the host ID that you want to see in the UI. 

    Element in controller-info.xml: <unique-host-id>

    System Property: -Dappdynamics.agent.uniqueHostId

    Environment Variable: APPDYNAMICS_AGENT_UNIQUE_HOST_ID

    Type: ASCII string without spaces and must be unique across the entire managed infrastructure. 

    Default: None

    Required: Optional, but recommended.

    Use Simple Hostname

    By default (unless overridden with the uniqueHostId system property), the Agent determines the host name of the OS it is running in using reverse DNS lookup. In some circumstances, this host name may be set as the fully qualified domain name of the host name. If this property is set to true, the Agent removes any domain name and uses the simple hostname to identify the host. In cases where the host name is an IP address (which happens if the DNS lookup fails) then the full IP address in string form is used. The host name is used in mapping metrics gathered by the Machine Agent to application nodes. See Unique Host ID Property

    Element in controller-info.xml: <use-simple-hostname>

    Type: Boolean

    Default: False

    Required: No

    For example: If this property is set to true 'server.mydomain.com' becomes 'server'.

    Independent Standalone Machine Agent Install Scenario

    Typically, you only use the following properties if you are installing the Machine Agent on a server that does not have any AppDynamics App Agents installed. 

    Application Name

    The name of the logical business application that this JVM node belongs to. This is not the deployment name (ear/war/jar) on the application server. If a business application of the configured name does not exist, it is created automatically.

    Element in controller-info.xml:  <application-name>

    System Property: -Dappdynamics.agent.applicationName

    Environment Variable: APPDYNAMICS_AGENT_APPLICATION_NAME

    Type: String

    Defaults: None

    Required: No. See Machine Agent Installation Scenarios

    Node Name 

    The name of the JVM node. When not specified, this defaults to Node1 for the Machine Agent.

    Element in controller-info.xml: <node-name>

    System Property: -Dappdynamics.agent.nodeName

    Environment Variable: APPDYNAMICS_AGENT_NODE_NAME

    Type: String

    Defaults: None

    Required: No. See Machine Agent Installation Scenarios

    Tier Name 

    The name of the logical tier that this JVM node belongs to. This is not the deployment name (ear/war/jar) on the application server. If a tier of the configured name does not exist, it is created automatically.

    Element in controller-info.xml: <tier-name>

    System Property: -Dappdynamics.agent.tierName

    Environment Variable: APPDYNAMICS_AGENT_TIER_NAME

    Type: String

    Defaults: None

    Required: No. See Machine Agent Installation Scenarios

    • No labels