PERFMON and PerformanceCounterCategory return different counters

  • Thread starter Thread starter Bert Hyman
  • Start date Start date
B

Bert Hyman

Using the PerformanceCounterCategory methods on SQL Server objects
returns counters that don't show up in PERFMON, in particular:

SQLServer:AccessMethods \ Worktables from cache ratio base
SQLServer:BufferManager \ Buffer cache hit ratio base
SQLServer:CacheManager(_Total) \ Cache hit ratio base
SQLServer:Databases (Master) \ Log cache hit ratio base
SQLServer:Latches \ Average latch wait time base
SQLServer:Locks \ Average wait time base

I note that they all end in " ... base", which may or may not mean
anything.

Why are these counters returned by dotNet, but not by PERFMON, or vice
versa?
 
What you are seeing are the base counters for performance
counters that use samples.

For a good explanation of how these work, see the MSDN for
PerformanceCounterType enumeration:
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpref/html/frlrfsystemdiagnosticsperformancecountercateg
oryclasstopic.asp

Basically, the base counters you're seeing represent the
denominator (hence, "Base") of a fraction that the
performance counter represents.

Dave
 
In "Dave P."
What you are seeing are the base counters for performance
counters that use samples.

Fine. But the question is:

Why are these counters returned by dotNet, but not by PERFMON, or vice
versa?
 
..NET returns them because they exist. If it didn't,
you'd have no way to update the base counters. Pmon
doesn't show them because they only exist to serve the
basis for other counters. They do not exist to be
observed by themselves.
 
Back
Top