Systems Engineering and RDBMS

Performance Counters are missing

Posted by decipherinfosys on June 26, 2008

In yesterday’s post, we had discussed how to go about uploading the perfmon data into a database for querying the data using simple SQL scripts. In this post, we will cover the scenarios when you see that a lot of your performance counters are missing. This question was asked by one of our readers and is also a very common situation in many different shops. We have seen this happen when there are clustered servers or when counters get updated by a hot fix or a service pack.

If you look into the Windows resource kit, you will find a utility called CTRLIST.exe. This reports on all the objects and the counters that are loaded on a particular server. There is also a GUI version of the utility available and the reason why we would recommend using either the command line version or the GUI version is to be able to look at the specifics of the DLLs that are related to each of those counters. That way, it becomes easier to troubleshoot in case a counter is missing or is not working for some reason. You can download the Windows Resource Kit from here.

After reviewing the output from the GUI utility or the text file from the command line utility, you can then check the Windows Application and System logs to see if there are any warnings or errors related to the loading of the performance library. If nothing specific is noticed, we would recommend just unloading and reloading the counter, example:

If the SQL Server counters are missing in action:

a) From the output from the GUI/text file from the command line utility, make a note of the sqlctr.ini file location.

b) Unload the SQL Server counters by executing:

Unlodctr mssqlserver

c) Reload the counters:

Lodctr C:\Program Files\SQL\MSSQL.1\MSSQL\Binn\sqlctr.ini

If you are using a clustered instance, then you need to use the Virtual Server Name in the unload and reload commands and if you have a named instance, then you need to use the virtual server name. If that also does not work for you, look up this KB article from MSFT that talks about rebuilding the entire performance counter library. Please do all this on a test system first to become comfortable with the steps.

One Response to “Performance Counters are missing”

  1. […] Posted by decipherinfosys on June 12, 2009 We had briefly covered this DMV in one of our blog posts before – here.  This DMV can be used for tracking SQL Server related perfmon counters through plain simple T-SQL statements.  This DMV is a replacement for the sysperfinfo view from releases prior to SQL Server 2005 and for every object name, we get the counter name, instance name, counter type and counter value – essentially the same things that we get through perfmon.  Here is the BOL entry for this DMV which also covers what to do in case these counters are missing from your system (you can also read more on that here): […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: