Overview
Citrix MetaFrame Performance Monitor Counters are not only important to monitor a MetaFrame server farm’s health, but they are vital for functionality, such as in the case with Resource Manager or Load Balancing.
Citrix MetaFrame installs the following three Performance Monitor objects:
- Counters Citrix IMA Networking
- Citrix MetaFrame Presentation Server
- ICA Sessions
- counters under these objects are located under the following registry key for an English server:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib09
Counter REG_MULTI_SZ
Help REG_MULTI_SZ
The values for the counters originate from the following registry keys:
Citrix MetaFrame Presentation Server = HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMetaframeXPPeformance
Library = mfxpperf.dll
ICA Sessions =
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCitrixICAPeformance
Library = icaperf.dll
IMA Networking =
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIMAServicePeformance
Library = imaperf.dll
The Library value indicates the DLL that communicates with Performance Monitor Counter values. Applications can retrieve values by calling registry interfaces (HKEY_PERFORMANCE_DATA) or by using Microsoft’s Performance Data Helper API functions.
Note: Refer to the Additional Information section for more information.
Environment
- Citrix MetaFrame XP 1.0
- Citrix MetaFrame Presentation Server 3.0
- Windows 2000 / Windows 2003
Problem Definition
Citrix Performance Monitor object “Citrix MetaFrame Presentation Server” is not visible in an ICA or RDP session.
Troubleshooting Methodology
A test was conducted by running the Performance Monitor from the console which showed all counters were visible. When connecting with RDP or ICA, Citrix MetaFrame Presentation Server was not visible.
Sample app PDHXP using PDH API calls exhibited the same results.
Note: PDHXP is available from Citrix Technical Support.
Resolution
The Mfxpperf.dll had an issue when it did not register itself globally. This has been resolved in a post MetaFrame Presentation Server 3.0 Hotfix Rollup Pack or in Citrix Presentation Server 4.0.
Problem Definition
Citrix Performance Monitor objects have corrupted counters or are missing completely from the console session.
Troubleshooting Methodology
Verify Citrix Performance Monitor objects are not available from the Performance Monitor on the console.
Verify the counters have not been disabled with Exctrlst.exe (see Microsoft article 248993 – PRB: Performance Object Is Not Displayed in Performance Monitor.)
Resolution
This may have been caused by a third-party application improperly altering performance counters in the registry.
This example is written for the Danish-language, but the Country code can be changed to anything may have on the system:
Caution! This fix requires you to edit the registry. Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.
- Make a Backup of the registry-Hives:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCitrix ICAPerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIMAServicePerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMetaFrameXPPerformance
- Make sure, that in regedt32 (regedit.exe will not show anything), the key HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib09 exists and also two MULTI_SZ has Counter and Help.
- Danish should have a language code of 006.
- Delete all keys:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCitrix ICAPerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIMAServicePerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMetaFrameXPPerformance
Note: Just delete the Performance-Key and all values will be deleted as well.
- Run the Icaperf.exe tool.
Note: IcaPerf.exe is available from Citrix Technical Support.
Information: This should reinitialize the performance-counter dlls with the operating system.
- Start performance monitor and check the availability of the counters.
- Verify that all counters are added, copy the two values Help and Counter from:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib09
into the Danish one:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib06
You need to use regedt32 for this operation. Make sure, that you create the Values as MULTI_SZ and copy and paste the actual content from 009 in 006.
How to repair performance monitor counters on an English-only server
Caution! This fix requires you to edit the registry. Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.
- Make a Backup of the registry-Hives:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCitrix ICAPerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIMAServicePerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMetaFrameXPPerformance
- Make sure, that in regedt32 (regedit.exe will not show anything), the key HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib09 exists and also two MULTI_SZ has Counter and Help.
- Delete all keys:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCitrix ICAPerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIMAServicePerformance
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMetaFrameXPPerformance
Note: Just delete the Performance Key and all values will be deleted as well.
- Run the Icaperf.exe tool.
Note: IcaPerf.exe is available from Citrix Technical Support.
Information: This should reinitialize the performance-counter dlls with the operating system.
- Start the performance monitor and check the availability of the counters.
- Platform SDK: Performance Monitoring
- Troubleshooting Performance Monitor Counter Problems
- Performance Object Is Not Displayed in Performance Monitor
- Showperf.exe: Performance Data Block Dump Utility
- Exctrlst.exe: Extensible Perf
ormance Counter List
This document applies to:
- MetaFrame Presentation Server 3.0 for Microsoft Windows 2000
- MetaFrame Presentation Server 3.0 for Microsoft Windows 2003
- MetaFrame XP 1.0 for Microsoft Windows 2000
- MetaFrame XP 1.0 for Microsoft Windows 2003
Source: Case Study: Troubleshooting Citrix MetaFrame Performance Counter Issues