Internal Alarm. Unable to get CPU data (error)

Document ID : KB000034925
Last Modified Date : 25/09/2018
Show Technical Document Details
Issue:

The cdm probe throws the following error in the cdm.log or you see it in the alarm sub-console:

Internal Alarm. Unable to get CPU data (error)


You may also see errors in the cdm log file similar to the following:

cdm: ntgetuptime: Unable to get the 'System Up Time' counter of the 'System' performance object

Resolution:

If you are seeing these types of errors in the cdm log here is the solution:

Verify on local Windows XP/2000/2003/2008 etc machine that performance counters are intact and visible using 'perfmon' tool on the local system e.g., for Processor.

If the perfmon counters are corrupted on your machine you’ll see numbers like 1151, 1112, 1167 etc. instead of counters/strings.

Also please check out this Microsoft KB article:

http://support.microsoft.com/kb/300956

If your counters are corrupted for instance: you can try issuing this command as administrator:

lodctr /R

Then recheck the counters to make sure they are repaired.

If the counters are successfully repaired, you will still need to reboot after the rebuild.

Also via regedit, take note of:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfOS\Performance

In this key, there could be a Disable Performance Counters value that is set to 1. You may have to reset that value to 0, and then Deactivate and Activate the cdm probe.

Also note that by default, some counters are not enabled on Windows machines so they have to be manually enabled. For more info see:

http://support.microsoft.com/kb/253251

How to manually rebuild Performance Counter Library values

http://support.microsoft.com/kb/300956

Missing Objects and Counters in Performance Monitor

http://support.microsoft.com/default.aspx?scid=kb;EN-US;127207

One solution is to export the registry key from another system and apply it to the subject computer.

Processor performance monitor (perfmon) object is not available:

http://technet.microsoft.com/en-us/library/aa995672%28v=exchg.80%29.aspx

Some performance objects and counters are not available in the System Monitor tool on your Windows XP-based computer.

http://support.microsoft.com/kb/884558

This information applies to any Windows system missing the following objects (not just Windows XP)
- Cache
- Memory
- Objects
- Processor
- System

Also, if you are seeing below errors in cdm.log file:

cdm: Error from GetNameStrings - RegQueryValueEx (Counter): The system cannot find the file specified.

It means that windows standard API RegQueryValueEx is failing to get registry handle for key HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Perflib\009 

under HKEY_LOCAL_MACHINE. 

go to registry editor using regedit command and check the HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Perflib\009 

counter value. It should be having counters and its values. 

If the counters are not available. Please follow below Microsoft links to manually rebuild Performance Counter. 

https://support.microsoft.com/en-us/kb/300956 

Additional Information:
CheckCpuInfo GetCpuInfo failed error InternalAlarm Unable CPU data