Issue

During a specific time window, the AppDynamics Database Agent reported low availability for the ABC and XYZ collectors. Monitoring metrics indicated a dip and a gap in the Controller UI. There was no evidence of connectivity drops between agent host and databases during this interval and also no db agent JVM restarts.

Environment

- Technology: AppDynamics

- Subtechnology: AppDynamics - Database Agent

- Monitored Databases: Oracle 19.0.0.0.0

- Monitored DB Collectors: ABC and XYZ

- No changes reported from the database side during the incident window

Resolution

To address the low DB availability events detected by the AppDynamics Database Agent, these steps were advised and implemented.

Step 1: Review Database Agent Logs for JVM Heap Parameters, Timeouts, Configuration Changes and Collector Shutdowns

Examine the AppDynamics Database Agent logs for JVM heap parameters, connection timeouts, configuration changes, and collector shutdowns. Relevant log excerpts from this case:

25 Jan 2026 22:47:00,394  INFO [DBAgent-4] ADBMonitorConfigResolver: - Outdated Configs: [ResolvedDBMonConfig {configName='XYZ', ... cpuCores=18, ...}]

25 Jan 2026 22:47:00,394  INFO [DBAgent-4] ADBMonitorConfigResolver: - new Configs: [ResolvedDBMonConfig {configName='XYZ', ... cpuCores=16, ...}]

25 Jan 2026 22:47:00,406  INFO [DBAgent-4] ADBCollector: - DB collector [XYZ] shut down!

25 Jan 2026 22:50:30,308  INFO [DBAgent-8] Agent: - JVM Args : -XX:+HeapDumpOnOutOfMemoryError | -XX:OnOutOfMemoryError=kill -9 %p | -DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector | --add-opens=java.base/java.lang=ALL-UNNAMED | --add-opens=java.base/java.security=ALL-UNNAMED | -Ddbagent.name=dbagent |

Step 2: Restart the Database Agent with Adjusted JVM Heap Arguments

1. Restart the AppDynamics Database Agent, ensuring to specify appropriate -Xms (minimum heap size) and -Xmx (maximum heap size) JVM arguments as documented in the official system requirements. This helps address memory or resource constraints that could contribute to internal agent restarts.

2. Example command to restart the agent with these arguments (actual command syntax can vary by environment):

nohup java -Xms<size> -Xmx<size> -Ddbagent.name=DB_AGENT_NAME -jar db-agent.jar

Replace <size> with values suitable for your monitoring environment, referencing the official documentation for recommendations.

Step 3: Refer to Official Documentation for System Requirements

Consult the official Database Visibility System Requirements to determine the recommended heap sizes and configuration best practices for the AppDynamics Database Agent. Always align JVM arguments and configuration parameters with these guidelines.

Cause

The observed low availability and metric gaps for the ABC and XYZ collectors were due to missing JVM Heap Parameters (-Xms ad -Xmx) and subsequent agent shutdowns. The root cause appears to be related to resource constraints (heap size settings) that temporarily interrupted agent operations.

Related Content

- Cisco Technical Support & Downloads