Why is the Machine Agent not reporting properly?
Users who are troubleshooting scenarios where the AppDynamics *Standalone Machine Agent is not reporting metrics as expected will find causes and solutions here. The following solutions apply to versions 4.4 and higher.
Contents:
Problem: Installation issues
If both an App Server Agent and the Machine Agent are unzipped into the same directory, important files will be overwritten, such as the log4j.xml
file.
Solution:
When unzipping the App Agent or Machine Agent zip files, make sure to use different directories.
Problem: Host ID for App Server Agent and Machine Agent do not match
Both the App Server Agent and the Machine Agent use the Java API to get the host ID. The results from the API can be inconsistent and the same JVM can sometimes return a different value for the same machine each time the Machine Agent is restarted.
When the host ID is then registered with the Controller the app server agent and the machine agent can be assigned different host IDs even though they are running on the same machine.
Solution:
Reset the hostname for the Machine Agent by running the agent with the
-Dappdynamics.agent.uniqueHostId
JVM parameter. Set the host ID to be the same as the one the App Server Agent is using.
Problem: Difficulty with machine hostname resolution
If the following error is seen in the Machine Agent log file, the cause is hostname resolution, which affects Machine Agent startup and registration.
.ERROR XMLConfigManager - Error in Default Host Identifier Resolver resolving host name
java.net.UnknownHostException: log-aggregate01: log-aggregate01
Solution:
/etc/hosts
file.- Example:
localhost log-aggregate01
127.0.0.1 log-aggregate01
3. Restart the Machine Agent.
Problem: Machine Agent reporting all metrics as zero
You have verified in the Machine Agent log that the Machine Agent is only collecting zero-values.Solution:
1. Change permissions on the Machine Agent installation folder for the user ID that the Machine Agent was started under chmod -R 777 <machine-agent-install
>
.
2. Restart the Machine Agent and verify that the zero values are no longer being reported.
3. If restarting does not help, disable Sigar Hardware monitoring located in the JavaHardwareMonitoring
directory.
- In the
monitor.xml
file (located at:<machine-agent-install>/monitors/JavaHardwareMonitor/*
), change the enabled property to false.Example:
<monitor> <name>SigarHardwareMonitor</name>
<type>managed</type>
<enabled>true</enabled> ---> change this to false –> <enabled>false</enabled>
4. Enable OS-specific hardware monitoring found in the HardwareMonitoring
directory.
- In
monitor.xml
file (location:<machine-agent-install>/monitors/HardwareMonitor/*
)
<monitor>
<name>HardwareMonitor</name>
<type>managed</type>
<enabled>false</enabled> ---> change this to true –> <enabled>true</enabled>
5. Restart the Machine Agent and verify that the zero values are no longer being reported.
__________________
*As of 2020, the term "Standalone Machine Agent" has been discontinued in favor of simply "Machine Agent.
- Mark as Read
- Mark as New
- Bookmark Message
- Permalink
- Report Inappropriate Content
I'm seeing mixed messages about the default machine agent metric limit in newer versions. I think it's 450 in version 4.2.4 and latrer. Can this be clarified?
- Mark as Read
- Mark as New
- Bookmark Message
- Permalink
- Report Inappropriate Content
- Mark as Read
- Mark as New
- Bookmark Message
- Permalink
- Report Inappropriate Content
I have updated this article to remove the old outdated information and keep everything applicable to 4.4 and higher.
- Mark as Read
- Mark as New
- Bookmark Message
- Permalink
- Report Inappropriate Content
As of 2020, the term "Standalone Machine Agent" has been discontinued in favor of simply "Machine Agent.
Claudia Landivar
Community Manager & Editor
AppDynamics
- Mark as Read
- Mark as New
- Bookmark Message
- Permalink
- Report Inappropriate Content
Hi,
I'm getting the error saying ErrorManagedMonitordDelegate after restarting the machine agent, error sending metric data to the controller