http://jira.hyperic.com/browse/HHQ-3814
The Runtime AI report from an agent does not always include all of its known resources. This causes the HQ server to ignore those resources when processing the report and therefore the Agent may not always have all of its metrics scheduled.
The entry point in the code to look at is AutoinventoryManager.reportAIData()
Here is an example of the report received from the agent:
2010-03-21 22:00:33,094 INFO [RuntimePlatformAndServerMerger1] [org.hyperic.hq.autoinventory.server.session.RuntimeReportProcessor@154] Processing Runtime AI Report: [CompositeRRR
Report #0 from reporting server=10106:
Platform #0 ID=null FQDN=goku.localdomain
Server #0 ID=10106 Name=goku Linux NetworkServer Stype=NetworkServer serviceCount=2
Report #1 from reporting server=10105:
Platform #0 ID=null FQDN=goku.localdomain
Server #0 ID=10105 Name=null Stype=null serviceCount=0
Report #2 from reporting server=10103:
Platform #0 ID=null FQDN=goku.localdomain
Server #0 ID=10103 Name=goku Linux ProcessServer Stype=ProcessServer serviceCount=3
Report #3 from reporting server=10102:
Platform #0 ID=null FQDN=goku.localdomain
Server #0 ID=10102 Name=goku Linux FileServer Stype=FileServer serviceCount=904
Report #4 from reporting server=10101:
Platform #0 ID=null FQDN=goku.localdomain
Server #0 ID=10101 Name=null Stype=null serviceCount=101
]
But, there are 11 servers in that particular agent's inventory:
+-------------------------------+
| name |
+-------------------------------+
| goku Tomcat 6.0 |
| goku HQ JBoss 4.x |
| goku Linux FileServer |
| goku Linux ProcessServer |
| goku Oracle 10g |
| goku.localdomain Net Services |
| goku Linux NetworkServer |
| goku MySQL Stats 5.1.x |
| goku HQ Agent 4.3.0-EE |
| goku Nagios |
| goku Coldfusion 7.x |
+-------------------------------+
11 rows in set (0.00 sec)
Anonymous