Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Some Windows platforms may generate perflib errors in the event log file relating to the use of performance counters. To suppress these errors, follow the commands described below.

The usual error in the event log is as follows:

vent ID: 1010
Detail Text:
The Collect Procedure for the (service name) service in DLL (DLL name) generated an exception or returned an invalid status. Performance data returned by counter DLL will not be returned in Perf Data Block. Exception or status code returned is DWORD 0.

Interpretation

...

Perflib calls the performance extension functions in a structured exception handler ___try block. This is posted if an exception occurred or RaiseException was called in the Collect function. The data field will have the exception code. For example, C0000005 means there was an Access Violation.

Expertise: Developer of named extensible counter DLL

To suppress these error messages, edit the following key in the Windows Registry:

HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionPerflib

The value to modify is a REG_DWORD value called Configuration Flags.

If this value is not present, add it and select one of the following values: 

0x01

Do not test for data buffer alignment errors. Suppresses 1016 event.

0x02

Do not disable DLLs when a critical error occurs but still post the events.

0x04

Disable all perf counter function testing regardless of testing level.

0x08

Enable the disabling of DLLs if timeouts are exceeded. Normally only other critical errors would disable DLLs.

0x10

Enable the collection of statistics for each performance DLL.

This is the default of Configuration Flags, if the value is not present.

The generally recommended value is 0x04 as this will generally cause perflib to ignore most errors and not stop the loading of performance counters after an error.

You can suppress additional logging entries by changing the following values in the KEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionPerflib key: 

ExtCounterTestLevel

1

object and counter lengths are checked for consistency

2

buffer overflows or guard pages are checked

3

no checking is made but does not suppress exception handling

EventLogLevel

0

no errors are reported

1

user event log error messages (1000-1013)

2

warnings and errors used for debugging (1000-2002)

3

verbose, all information (1000-3000)

Set the EventLogLevel value to 0.

If you continue to encounter errors, contact uptime Support for further assistance.