Link to home
Start Free TrialLog in
Avatar of gfergus
gfergus

asked on

WMI ADAP was unable to create object index 920 for Performance Library WINS because no value was found in the 009 subkey ?

I get about 23 of these warnings in the application event log every time I login.
I'm running Windows 2000 server on a Celeron 500mhz.
Some of the hardware may be a bit old, but everything seems to work OK.
Maybe I missed some part of the setup?

Sample of the error messages:

Event Type:     Warning
Event Source:     WinMgmt
Event Category:     None
Event ID:     41
Date:          06/09/2001
Time:          6:42:24 AM
User:          N/A
Computer:     MASTER
Description:
WMI ADAP was unable to create object index 920 for Performance Library WINS because no value was found in the 009 subkey

...and here's another...

Event Type:     Warning
Event Source:     WinMgmt
Event Category:     None
Event ID:     41
Date:          06/09/2001
Time:          6:42:24 AM
User:          N/A
Computer:     MASTER
Description:
WMI ADAP was unable to create object index 4116 for Performance Library W3SVC because no value was found in the 009 subkey
Avatar of dew_associates
dew_associates
Flag of United States of America image

This can occur because either there may be a problem in the performance counter, or there may be a false-positive return value in the Windows Management Instrumentation (WMI) Performance Library dredger. If there is a false-positive return value in the WMI Performance Library dredger, in certain situations, the dredger may incorrectly determine that a library is invalid even though the counter works correctly.
 
Backup your registry and make sure you have a valid Emergency Repair Disk (ERD).
 
Try to dredge the computer's performance libraries again by using the following commands:
 
"winmgmt /clearadap" (without the quotation marks)
 
This command clears all WMI-related values from the service's performance registry key.
 
"winmgmt /resyncperf "winmgmt service pid"" (without the quotation marks)
 
This command registers the the computer's performance libraries with the WMI.
 
You can find the WMI service PID information on the Process tab of Windows Task Manager.
 
The performance registry keys for the involved services include the following registry keys:
 
WbemAdapFileSize
WbemAdapFileTime
WbemAdapStatus
 
NOTE: For more information about the command options that are available with WMI, type "winmgmt/?" (without the quotation marks) at a command prompt.
 
Another possible cause for the events may be that the counters are slow to respond due to other activities during startup. You can tune this timeout by adding the value Collect Timeout REG_DWORD 10000 to the appropriate registry location:
 
   HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\[counterfile]\Performance
 
Where [counterfile] is the <file name> performance library listed in the error message from Event Viewer.
 
For example, if the message in Event Viewer is
 
WMI ADAP was unable to process the perfproc.dll performance library due to a time violation in the open function
 
then the registry key will be:
 
   HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\PerfProc\Performance
 
Please note that this registry path does not include the file extension (.dll). If events continue to be logged after you make these changes, change the WbemAdapStatus value manually to REG_DWORD 0 under the service's performance registry key, and then increase the ADAPPerflbTimeout value to REG_DWORD 180 in the following registry key:
 
HKEY_LOCAL_MACHINE\Software\Microsoft\Wbem\CIMOM
 
NOTE: You must enter all registry changes as decimal values.
 
In addition, you can disable performance counters for a specific service with the Exctrlst.exe utility from the Windows 2000 Resource Kit. This utility disables the specific counter by adding a registry key similar to the example below. You can add these registry entries under the specific counter entry manually if Exctrlst.exe is not available or desirable.
 
   HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Spooler\Performance
 
Value name: Disable Performance
Value type: REG_DWORD
Value data: 1
 
 
The AutoDiscovery/AutoPurge (ADAP) process is responsible for collecting and maintaining performance counter objects in WMI that are registered on the computer. The ADAP process starts when the WinMgmt service is started or when you install or uninstall the performance libraries, which contain the performance counters, by using either the Lodctr or Unlodctr utilities.

Dennis
Avatar of gfergus
gfergus

ASKER

Thanks Dennis,
Your description and advice were very well received. Thank you. Here's were I'm up to:

-I tried to 'dredge' the performance libraries as suggested, rebooted a couple of times and the errors reoccurred.

-I examined the possibility of the 'counters to slow...during startup'. I agree, my PC may be slow to boot, I had to previously delay processes such as NetLogon in the registry to overcome some similar problems. However I would like to solve this error without disabling the performance counters (your final solution)

-I found the event 'WMI ADAP was unable to process the perfproc performance library due to a time violation in the collect function' and followed your instructions. ie. set WbemAdapStatus to REG_DWORD 0, and ADAPPerfib Timeout to REG_DWORD 180. After the reboot the event message did not appear again. (A solution that works?)

-The other 24 application event error messages still appear. For example:

Event Type:     Warning
Event Source:     WinMgmt
Event Category:     None
Event ID:     41
Date:          11/09/2001
Time:          6:06:28 AM
User:          N/A
Computer:     MASTER
Description:
WMI ADAP was unable to create object index 4280 for Performance Library ASP because no value was found in the 009 subkey

-I note that there is reference to the 'Performance Library ASP' in the above event message and that your instructions suggest increasing the 'ADAPPerflb' Timeout value to 180 for each of the processes (that indicate  error).

-However, before setting the ddelay on all of the processes in error, I have found another event message that may be the root of the problem. Could you please advise. Here are the two messages:

Event Type:     Error
Event Source:     LoadPerf
Event Category:     None
Event ID:     3000
Date:          11/09/2001
Time:          6:05:51 AM
User:          N/A
Computer:     MASTER
Description:
The performance strings in the registry do not match the index values  stored in the Perflib key. The Record Data contains the last index value  from the Perflib key in DWORD 0 and the index of the last string used as DWORD 1.
Data:
0000: 39 01 00 00 39 0d 00 00   9...9...

AND:

Event Type:     Error
Event Source:     LoadPerf
Event Category:     None
Event ID:     3011
Date:          11/09/2001
Time:          6:05:51 AM
User:          N/A
Computer:     MASTER
Description:
Unloading the performance counter strings for FileReplicaSet failed. The Error code is DWORD 0 of the Record Data.
Data:
0000: cb 00 00 00               E...    

These error messages occur approx 30 second before the set of 24 Warning messages related to WinMgmt.

Thanks
Greg
Those two errors involve just editing the Dword values and changing them accordingly. Just record the keys, change the values and reboot and see if the errors continue. Usually though, ID 3000 errors come from performance monitoring and related to web servers.
Avatar of gfergus

ASKER

Thanks Dennis,

I checked the Perfomance application and found that there are some 39 'Performance Object's that do not have a descriptive title, but instead display only a number and have no 'instances'. It would seem as though the libraries (perfh009.dat, Perfc009.dat?) have not been installed correctly.

Do you think this may be the case? If so, how do I load them into the registry? I found the two dat files mentioned above in system32. Do I use the Lodctr or Unlodctr utilities? How do I use them?

The ...Windows NT/Current Version/Perflib/009 subkey contians two items:

default:(no value), and

Counter: "Counter"=hex(7):
31,00,00,00,31,00,38,00,34,00,37,00,00,00,33,00,00,00,46,00,\
  69,00,6c,00,65,00,52,00,65,00,70,00,6c,00,69,00,63,00,61,00,43,00,6f,00,6e,\
  00,6e,00,00,00,35,00,00,00,50,00,61,00,63,00,6b,00,65,00,74,00,73,00,20,00,\

etc, etc.

Greg
Okay, let's tackle this one first:

Event Type:     Error
Event Source:     LoadPerf
Event Category:     None
Event ID:     3000
Date:          11/09/2001
Time:          6:05:51 AM
User:          N/A
Computer:     MASTER
Description:
The performance strings in the registry do not match the index values  stored in the Perflib key. The
Record Data contains the last index value  from the Perflib key in DWORD 0 and the index of the last
string used as DWORD 1.
Data:
0000: 39 01 00 00 39 0d 00 00   9...9...

Insert your Windows 2000 CD into the drive. Now click Start | Run and type in SFC /SCANNOW <enter>

Now reboot the system and see of the problem is resolved.
Avatar of gfergus

ASKER

Hi Dennis,

Ran the System File Checker, all system files appear OK. I did note that the boot-up process was a bit quicker, so something may have been cleaned up. The ACSService client's password had expired, so I set the account to 'does not expire' - re-boot, that seems OK now.

But the original perflib messages in the Application log file are still occurring. Seems to be related to the Event ID 3000 message. Do we setup the index values in the ...Windows NT/Current Version/Perflib/009 subkey next?

Thanks,
 Greg
I would and let's see how that progresses
BTW, does this machine have either SP 1 or 2 installed?
Avatar of gfergus

ASKER

Oh Yeah,

The server has Service Pack 2 installed and Version number is 5.00.2195

Also the main reason that I detected the perflib problem was after a Microsoft Exchange 5.5 install failed. The bulk of the files were installed and the services were setup but near the end of the installation the install program reported that it could not access the performance keys or they were not available. It then exited reporting that the installation had failed. The system event log reports errors relating to MS Exchange, generally stating that a 'file' could not be found. The application does not appear in the 'add/remove programs' list either. There is no Start/Menu->Programs reference to MS Exchange either.

Thanks Dennis

PS. It seems to be getting more complicated, yes?
Avatar of gfergus

ASKER

Oh, can you advise how to fix up the

Windows NT/Current Version/Perflib/009 subkey ?

Thanks,

Greg

Greg, I wish you had mentioned that failed install earlier as it might have saved some time. Have there be any other problems with failed installs? and is there a virus scanner or software firewall running?
Avatar of gfergus

ASKER

Yes,

Norton's Antivirus Corporate Edition 7.51
Symantec System Control Centre
Microsoft Proxy 2.0

Microsoft Office 2000 + Server Extentions
Routing & Remote Access, Qos, DNS, DHCP
Certification Authority
Windows Media Administrator


I am running a small LAN at home connected to broadband cable internet. I have two NICs, one local LAN the other cable internet.

I attempt to become more familar with Windows 2000 server administrator by using this setup at home. By xmas we will be deploying several Windows 2000 upgrades for 2 LANs (700-1000 pcs)

Greg
Were the Symantec products running at the time you attempted to install Exchange?
Avatar of gfergus

ASKER

Yes! I detect you may be onto something?
ASKER CERTIFIED SOLUTION
Avatar of dew_associates
dew_associates
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of gfergus

ASKER

Thanks Dennis

Seems I overlooked NAV running at the time of install. The whole server appears screwed up so I'll just re-build it!
Good experience!

Thanks again for all your help!

Greg
Any time Greg, it was my pleasure.