Default Auto-Instrumentation Properties
This table describes the default properties available to configure auto-instrumentation, defined in the cluster-agent.yaml spec:
appNameLabel
| N/A |
The value of this label will be the Splunk AppDynamics application name. |
appNameStrategy
| manual |
The option to specify a name for the Splunk AppDynamics application. You can specify any of these values for this parameter:
|
defaultAnalyticsHost
| N/A |
The hostname of the Analytics Agent. This parameter is required if you require the Node.js Agent to send the default transaction data to the Analytics Agent. The default value is applied to all instrumented resources unless it is overwritten by the instrumentationRules configuration. |
defaultAnalyticsPort
| N/A |
The listening port for Analytics Agent. For example, if the Analytics Agent is listening on port 9090, then the value of this parameter is 9090. The default value is applied to all instrumented resources unless it is overwritten by the instrumentationRules configuration. This parameter is required with |
defaultAnalyticsSslEnabled
| N/A |
This value is based on whether the Analytics Agent port is SSL enabled. If the port is SSL enabled, specify the value as This parameter is required with The default value is applied to all instrumented resources unless it is overwritten by the |
defaultAppName | "" | (Required) Application name used by the agent to report to the Controller. |
defaultCustomConfig
| N/A |
This parameter is specific to Java applications. You can add any custom system property if your application framework requires any specific configuration for instrumentation. This value is appended to the When you upgrade your deployment using Helm, you can use this parameter instead of defaultEnv to avoid re-instrumentation issues. See Troubleshoot Re-instrumentation Issues for Upgraded Deployment under Validate Auto-Instrumentation. |
defaultContainerMatchString
| N/A |
This is a regex value to choose the containers to instrument. This parameter requires you to use the When the |
defaultEnv |
JAVA_TOOL_OPTIONS
|
This parameter is specific to Java applications. Environment variable to which the - You can override this variable to use any other environment variable best suited for the deployment. However, if you override this value for upgrading the deployment, Cluster Agent does not re-instrument. This happens because both Java Agent and the deployment uses For more information to troubleshoot, See Troubleshoot Re-instrumentation Issues for Upgraded Deployment under Validate Auto-Instrumentation. |
defaultInstrumentationLabelMatch |
[ ] |
Specific deployment labels marked for instrumentation. This parameter accepts a list of key-value pairs to instrument. You must match a minimum of one label for instrumentation. For example:
For example, if only |
defaultInstrumentMatchString |
.*
|
Names of deployments targeted for instrumentation. This parameter is used as the default value for the This parameter accepts deployment names as a regular expression or regex. If there are multiple deployments to instrument, you can separate names with a ' By default, this parameter instruments all deployments configured by |
enableForceReInstrumentation
|
false
|
This property needs to be set to true if the newly introduced instrumentation properties should overwrite the old configuration on the successfully instrumented pods. By default this property is set to false. Set the value to true if you require to update the instrumentation configuration to the successfully instrumented deployments during Cluster Agent upgrade. Set the value to false if you require to retain the instrumentation configuration to the successfully instrumented deployment. However, updated configurations will be applied if the instrumentation state of the existing deployment is either failed or new. Note: When you upgrade Cluster Agent you must set this value to true to apply the updated configurations to the successfully instrumented deployment.
|
enableInstallationReport
| "false" |
Enables or disables the collection of installation information. It generates a summarized report with the following details:
To view the installation report, see View Installation Report. |
imageInfo |
|
The Docker repository from where the Node.js Agent, .NET Core for Linux, and Java Agent is pulled. Supported values are:
This parameter is used in the init containers that are added during auto-instrumentation. |
instrumentationMethod |
None
|
The instrumentation method used for instrumenting Apps. Supported values are:
|
instrumentationRules |
[ ] |
Required. This parameter is used to enable auto-instrumentation.This includes the list of specific instrumentation rules. You can apply the rules to one or more namespaces, and can filter on deployment names and labels. Instrumentation rules are granular to support targeting specific deployments. |
javaAgentCustomSSLKeystore |
N/A |
Secret name for Java Agent SSL keystrore file. For more information, see Use Custom SSL for Java Agent Auto-Instrumentation. |
javaAgentCustomSSLKeystorePasswordSecret |
N/A |
Secret name for Java Agent SSL keystrore password. For more information, see Use Custom SSL for Java Agent Auto-Instrumentation. |
nsToInstrumentRegex |
""
|
Required. If you do not specify a value, auto-instrumentation will not work. Specify the namespaces to be instrumented as a regex. If there are multiple namespaces to instrument, separate namespaces using "|" without spaces. By default, namespaces are not instrumented. |
numberOfTaskWorkers
|
2
|
To configure the rate limit for the number of deployments that are auto-instrumented at the same time. Note: Increasing this value may lead to a larger number of concurrent pod restarts in the cluster.
|
netvizInfo |
bciEnabled: true port: 3892 |
To configure the Network Visibility App Agent, netviz, Install Infrastructure Visibility with the Kubernetes CLI on how to install the Network Agent. By default, Supported values are:
|
runAsGroup |
0
|
If you configured the application container as a non-root user, provide the group ID (GID) of the corresponding group. The default |
runAsUser |
0
|
If you configured the application container as a non-root user, provide the user ID (UID) of the corresponding user. The default |
resourcesToInstrument
|
Deployment
|
Cluster Agent instruments the resources that are listed in this parameter. The supported values are:
For example, to instrument resourcesToInstrument:
|
tierNameLabel
| N/A |
The value of this label will be the Splunk AppDynamics tier name. |
tierNameStrategy
| manual |
The option to specify a name for the tier. You can specify any of these values for this parameter:
|
View the Installation Report
You can view the summarized installation report if you have enabled the enableInstallationReport
parameter in the cluster-agent.yaml
file. See Default Auto-Instrumentation Properties. Perform the following steps to view the installation report:
-
Run the kubectl exec
kubectl exec -it <cluster-agent-pod-name> -n <namespace> sh
- Navigate to the logs directory.
- Open the
InstallationReport.csv
file to view the report.
Use Custom SSL for Java Agent Auto-Instrumentation
You can use the following properties in the default cluster-agent.yaml file to specify the secret for the Keystore file and password. This enables Java Agent auto-instrumentation with custom SSL.
- javaAgentCustomSSLKeystore
- javaAgentCustomSSLKeystorePasswordSecret
custom-ssl.jks
. For information about creating certificates, see .Run the following commands to create secrets, which is used for the auto-instrumentation of Java Agent with custom SSL.
- Create secret for keystore file.
kubectl -n appdynamics create secret generic <secret name> --from-file=<path to custom-ssl.jks file>
- Create secret for the keystore password.
kubectl -n appdynamics create secret generic <secret name> --from-literal=keystore-password=‘<keystorePassword>’
Update Secrets After Certificate Update
If you change the custom SSL keystore file or the keystore password, you require to perform the following:
- Uninstrument Java application.
- Create new secret for keystrore file and keystrore password. See Use Custom SSL for Java Agent Auto Instrumentation.
- Re-instrument Java application.