Combined Agent for Infrastructure Visibility

The Combined Agent for infrastructure visibility enables dual-signal infrastructure monitoring by reporting telemetry simultaneously to both AppDynamics and the Splunk Observability Cloud using OpenTelemetry. This approach simplifies your migration by allowing you to maintain your existing AppDynamics visibility while adopting the Splunk Observability Cloud.

Key Benefits

  • Maintain existing visibility: Retain your current AppDynamics monitoring throughout your transition to Splunk Observability Cloud.
  • Simplify deployment: Upgrade to the Combined Machine Agent once to enable both telemetry streams, eliminating the need to deploy and maintain separate agents.
  • Preserve critical functionality: Ensure that AppDynamics features, such as Health Rules and remediation scripts, remain operational during the transition.

Supported Modes

  • Machine agent mode (default)
  • Dual signal mode
  • OTel only mode

Configuration

Machine Agent applies settings based on the following priority (highest to lowest):
  • Environment Variables
  • Java System Properties (-D)
  • controller-info.xml
Configure the following environment variables to enable reporting to the Splunk Observability Cloud. These variables allow the OTel Collector to authenticate and route data correctly.
Note: Environment variables are applicable for both Dual-signal mode and OpenTelemetry Only Mode.
Environment Variable Purpose Default / Note
SPLUNK_ACCESS_TOKEN The authentication token for Splunk Observability Cloud. Required
SPLUNK_REALM The Splunk Observability Cloud realm. For example, us0, eu0, and so on. Required
DEPLOYMENT_ENVIRONMENT A custom label used to group data by environment. Optional
SPLUNK_API_URL The API endpoint for the specified realm. https://api.${SPLUNK_REALM}.signalfx.com
SPLUNK_INGEST_URL The ingest endpoint for the specified realm. https://ingest.${SPLUNK_REALM}.signalfx.com

Machine Agent Mode (Default)

Machine Agent Mode is the baseline state of the agent, ensuring that existing infrastructure monitoring remains uninterrupted during the initial upgrade phase.
  • Behavior: Only the Java Machine Agent runs. It collects and reports metrics exclusively to the AppDynamics Controller.
  • Use Case: Ideal for legacy systems (AIX, HP-UX, Solaris) where OpenTelemetry is not yet supported, or during the initial phase of your transition.
  • Configuration: This is the default state. No additional OTel configuration is required.
Dual Signal Mode enables simultaneous telemetry reporting to both the AppDynamics Controller and the Splunk Observability Cloud. The Machine Agent and the OTel Collector run as independent processes. If the OTel Collector encounters an issue, the Machine Agent continues reporting to AppDynamics without interruption. Also, the agent automatically maps your AppDynamics configuration (App/Tier/Node) to OTel resource attributes to ensure seamless correlation within the Splunk Observability Cloud.
  • Behavior: Metrics are sent simultaneously to the AppDynamics Controller and the Splunk Observability Cloud.
  • Use Case: Ideal for users in the transition phase who need to maintain their existing AppDynamics visibility while configuring dashboards in Splunk Observability Cloud.
  • Configuration: Reduces operational overhead by managing a single agent package instead of two separate installations. Since the process is independent, any failure does not impact in reporting.
OpenTelemetry Only Mode represents that the infrastructure is monitored through OpenTelemetry without the overhead of the Java Machine Agent.
  • Behavior: The Java Machine Agent process is skipped entirely. Only the Splunk Distribution of the OTel Collector runs.
  • Use Case: Ideal if you have completed the transition and no longer require data reporting to the AppDynamics Controller.
  • Configuration: Reduced resource footprint (no JVM required for infrastructure monitoring) and access to the full suite of OTel receivers and community-maintained extensions.

Configure the following settings to enable the required mode:

Mode Environment Variable -D System Property controller-info.xml
Machine Agent Default (nothing to set), or SPLUNK_OTEL_ENABLED=false Default, or -Dsplunk.otel.enabled=false <otel-enabled>false</otel-enabled> (or omit)
Combined SPLUNK_OTEL_ENABLED=true -Dsplunk.otel.enabled=true <otel-enabled>true</otel-enabled>
O11y-only SPLUNK_OTEL_ONLY=true -Dsplunk.otel.only=true n/a (env var or -D only)

Logs

The OTel Collector logs are located at /opt/appdynamics/machine-agent/logs/otel/otel_collector.log.

Uninstall Machine Agent

Use the command to uninstall the Machine Agent (any mode): cscript .\UninstallService.vbs)