Other Properties

Enable Orchestration

When set to true, enables auto-detection of the controller host and port when the app server is a compute cloud instance created by a Cisco AppDynamicsorchestration workflow. See Controller Host Property and Controller Port Property.

In a cloud compute environment, auto-detection is necessary for the Create Machine tasks in the workflow to run correctly.

If the host machine on which this agent resides is not created through Splunk AppDynamics workflow orchestration, this property should be set to false.

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

Type: Boolean

Default: False

Required: No

Agent Runtime Directory

Sets the directory under which all files the agent writes at runtime. If this property is specified, all agent logs are written to <Agent-Runtime-Directory>/logs/node-name and transaction configuration is written to the <Agent-Runtime-Directory>/conf/node-name directory. The log folder location can be overridden with the appdynamics.agent.logs.dir property.

Element in controller-info.xml: <agent-runtime-dir>

System Property: -Dappdynamics.agent.runtime.dir

Environment Variable: APPDYNAMICS_AGENT_BASE_DIR

Type: String

Default: <agent_home>/nodes

Required: No

Redirect Logfiles

Sets the destination directory to which the logs will be written to.

System Property: -Dappdynamics.agent.logs.dir

Type: String

Default: <agent_home>/logs/<Node_Name>

Required: No

Custom Path for agent conf Directory

Sets a custom path for the agent conf directory. This is where the agent reads its static config files from. If you need to change custom-activity-correlation.xml or app-agent-config.xml and the agent installation is read-only, this instructs the agent to read the static config files from elsewhere

System Property:-

Type: String

Default: <agent_home>/ver4.5.x.x.x/conf

Required: No

Force Agent Registration

Set to true only under these conditions:

  • The agent has been moved to a new application or tier from the UI, and
  • You want to override that move by specifying a new application name or tier name in the agent configuration

Element in controller-info.xml: <force-agent-registration>

Type: Boolean

Default: False

Required: No

Auto Node Name Prefix

Set this property if you want the Controller to generate node names automatically using a prefix that you provide.

The Controller generates node names by concatenating the specified prefix with a UUID suffix. For example, if you set the prefix as follows:

-Dappdynamics.agent.auto.node.prefix=JoannaAutoNode
            

The generated node name is

JoannaAutoNode_d39dbfc1-6f4b-4eb7-a788-c1c0135b6bcb

This property provides a similar function to the Reuse Node Name Prefix Property property. However, this property is not meant to be used in combination with reusing node names; use Reuse Node Name Prefix Property for those cases instead.

Element in controller-info.xml: Not applicable

System Property: -Dappdynamics.agent.auto.node.prefix=<your_prefix>

Type: String

Default: Serial number maintained by the Controller appended to the tier name

Required: No

Auto Logs Directory Cleanup

Set this property if you want the Java agent to automatically delete the older node directories. By default this property is disabled and set to 0

On every agent restart, the agent deletes the older node directories that have not been updated in the last hours as specified in the property. For example, if you set the property as follows:

-appdynamics.agent.log.dir.threshold.hours=4

On the next agent restart, the agent will delete the node directories that have not been updated in the last 4 hours.

Element in controller-info.xml: Not applicable

System Property: -appdynamics.agent.log.dir.threshold.hours

Type: Integer

Default: 0

Required: No

Cron/Batch JVM

Set this property to true if the JVM is a batch/cron process. You can use this property to stall the shutdown to allow the agent to send metrics before shutdown.

Element in controller-info.xml: Not applicable

System Property: -Dappdynamics.cron.vm

Type: Boolean

Default: False

Required: No

Unique Host ID

Logically partitions a single physical host or virtual machine such that it appears to the Controller that the application is running on different machines. Set the value to a string that is unique across the entire managed infrastructure. The string may not contain any spaces. If you have a machine agent associated with the application monitored by the app agent, then this property must be set on the machine agent to the same value. See Machine Agent Installation Scenarios.

System Property: -Dappdynamics.agent.uniqueHostId

Environment Variable: APPDYNAMICS_AGENT_UNIQUE_HOST_ID

Type: String

Default: None

Required: No

Agent Meta Info

Allows you to associate arbitrary information with a node, which can then be used as a basis for applying health rules or policies by node. For example, you can exclude a health rule from applying to agents tagged as test agents based on a meta-info property. Pass the property in key;value format (for example, "key1;value1;key2;value2"). Do not use semicolons as value(s) as it is used as a delimiter.

For information on using the properties in health rules or policies (along with built-in meta-info properties), see Configure Health Rules or Configure Policies.

System Property: -Dappdynamics.agent.node.metaInfo

Type: String

Default: None

Required: No

Low Entropy

Addresses agent startup issues in systems with low to zero entropy available for seeding the PRNG algorithm. This is set to true by default. The NativePRNGNonBlocking algorithm is used through SecureRandom if the system property appdynamics.low.entropy is set. Windows is not affected by this change as it does not support NativePRNGNonBlocking, and continues to use the existing Secure Random implementation.

System Property: appdynamics.low.entropy=true

Element in controller-info.xml: No

Environment Variable: No

Type:Boolean

Default:True

Required: No

If appdynamics.low.entropy=true then the agent takes measures to ensure it does not block when generating random values, even in the absence of entropy.

For example: From Java Agent 20.11, the agent defaults to using NativePRNGNonBlocking as its SecureRandom implementation. This will try to use a non-blocking low entropy algorithm for UUID generation. Note that NativePRNGNonBlocking is not supported on Windows and defaults to the existing implementation of SHA1PRNG.

Analytics Agent

For use with the transaction analytics feature with a remote (or non-default) Analytics agent. See Enable the App Server Agent for a Remote Analytics Agent.

System Property: -Dappdynamics.analytics.agent.url

Element in controller-info.xml: No

Environment Variable: No

Type: String

Default: http://localhost:9090/v2/sinks/bt

Required: No

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 by 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) 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'.

Dynamic Services JAR Signing

When set to True, it enables automatic JAR signing of the dynamic services. In addition, it Identifies vulnerabilities in the dynamic service workflow. Also, it provides checks to prevent loading and executing code from a malicious dynamic service. When Set to False, disables the JAR signing.

Element in controller-info.xml: <enable-jar-signing>

Type: Boolean

Default: True

Required: No

Identify JVM Vendors

Java Agent automatically identifies the underlying JVM. In case it identifies incorrectly, this flag can be used to override the automatically detected JVM vendor. This property identifies the JVM even when it is renamed. Set this property to true to identify the underlying JVM. By default, this property is disabled.

Element in controller-info.xml: Not Applicable

System Property:: -Dappdynamics.jvm.vendor

Type: String

Accepted Values: ibm, sun

Default: N/A

Required: No

Java Agent Tags

Note: Java Agent tags require Controller 24.5 or later. If your Controller version is older than 24.5, you must delete tags or use the -Dappdynamics.disable.tags=true system property to disable tags. If you enable tags on an unsupported Controller, the java agent will not register on Controller.

Tags are key-value pairs that are associated with your entities, such as applications, tiers, nodes, etc. These tags act as metadata that help you find your application resources in the Controller UI. You can reduce the Mean Time To Detection (MTTD) of any entity related issues by tagging them using appropriate custom tags. To know how to import tags in Controller, see Custom Tag APIs.

The Java Agent tags can defined during the agent registration using the system property or environmental variable. In case of conflict, the environmental variable takes precedence over system property. These tags are sent to the Controller UI and help filter data using tag-based filtering and tag-based columns. If you make changes to your tagging configuration, you must restart the agent.

System Property: -Dappdynamics.entity.tag.*

Here are example tags using system property:

  • -Dappdynamics.entity.tag.key1 = value1
  • -Dappdynamics.entity.tag.key2 = value2

Environment Variable: APPDYNAMICS_ENTITY_TAG_*

Here are example tags using environmental variable:

  • APPDYNAMICS_ENTITY_TAG_key1=value1
  • APPDYNAMICS_ENTITY_TAG_key2=value2

Type: String

Default: None

Required: Optional

Set the following system property true to disable tags.

System Property: -Dappdynamics.disable.tags

Type: Boolean

Default: False

Required: Optional