Using SQL Server Objects
SQL Server provides objects and counters that can be used by System Monitor to monitor activity in computers running an instance of SQL Server. An object is any SQL Server resource, such as a SQL Server lock or Windows XP process. Each object contains one or more counters that determine various aspects of the objects to monitor. For example, the SQL Server Locks object contains counters called Number of Deadlocks/sec and Lock Timeouts/sec.
Some objects have several instances if multiple resources of a given type exist on the computer. For example, the Processor object type will have multiple instances if a system has multiple processors. The Databases object type has one instance for each database on SQL Server. Some object types (for example, the MemoryManager object) have only one instance. If an object type has multiple instances, you can add counters to track statistics for each instance, or in many cases, all instances at once. Counters for the default instance appear in the format SQLServer:<object name>. Counters for named instances appear in the format MSSQL$<instance name>:<counter name> or SQLAgent$<instance name>:<counter name>.
By adding or removing counters to the chart and saving the chart settings, you can specify the SQL Server objects and counters that are monitored when System Monitor is started.
You can configure System Monitor to display statistics from any SQL Server counter. In addition, you can set a threshold value for any SQL Server counter and then generate an alert when a counter exceeds a threshold. For more information about setting an alert, see Creating a SQL Server Database Alert.
Note
SQL Server statistics are displayed only when an instance of SQL Server is installed. If you stop and restart an instance of SQL Server, the display of statistics is interrupted and resumes automatically. Also note that you will see SQL Server counters in the System Monitor snap-in even if SQL Server is not running. On a clustered instance, performance counters only function on the node where SQL Server is running.
This table describes SQL Server objects.
Performance object | Description |
---|---|
Searches through and measures allocation of SQL Server database objects (for example, the number of index searches or number of pages that are allocated to indexes and data). |
|
Provides information about backup devices used by backup and restore operations, such as the throughput of the backup device. |
|
Provides information about the memory buffers used by SQL Server, such as freememory and buffer cache hit ratio. |
|
Provides information about how frequently SQL Server requests and accesses free pages. |
|
Provides information about CLR. |
|
Provides information about cursors. |
|
Provides information about cursors. |
|
Provides information about database mirroring. |
|
Provides information about a SQL Server database, such as the amount of free log space available or the number of active transactions in the database. There can be multiple instances of this object. |
|
Provides information about execution statistics. |
|
Provides information about general server-wide activity, such as the number of users who are connected to an instance of SQL Server. |
|
Provides information about the latches on internal resources, such as database pages, that are used by SQL Server. |
|
Provides information about the individual lock requests made by SQL Server, such as lock time-outs and deadlocks. There can be multiple instances of this object. |
|
Provides information about SQL Server memory usage, such as the total number of lock structures currently allocated. |
|
Provides information about the SQL Server cache used to store objects such as stored procedures, triggers, and query plans. |
|
Provides information about SQL Server errors. |
|
Provides information about aspects of Transact-SQL queries, such as the number of batches of Transact-SQL statements received by SQL Server. |
|
Provides information about the active transactions in SQL Server, such as the overall number of transactions and the number of snapshot transactions. |
|
Performs custom monitoring. Each counter can be a custom stored procedure or any Transact-SQL statement that returns a value to be monitored. |
|
Provides information about Waits. |
The table below lists the performance objects provided for Service Broker.
Performance object | Description |
---|---|
Provides information about Service Broker activated tasks. |
|
Provides general Service Broker information. |
|
Provides information on Service Broker networking. |
The table below lists the performance objects provided for SQL Server Agent:
Performance object | Description |
---|---|
Provides information about SQL Server Agent alerts. |
|
Provides information about SQL Server Agent jobs. |
|
Provides information about SQL Server Agent job steps. |
|
Provides general information about SQL Server Agent. |
The table below lists the performance objects provided for SQL Server replication:
Performance object | Description |
---|---|
SQLServer:Replication Agents SQLServer:Replication Snapshot SQLServer:Replication Logreader SQLServer:Replication Dist. SQLServer:Replication Merge For more information, see Monitoring Replication with System Monitor. |
Provides information about replication agent activity. |
Other Counters
For the SSIS Pipeline counter, see Monitoring Performance of the Data Flow Engine.
Required Permissions
Use of the SQL Server objects depends on Windows permissions, except SQLAgent:Alerts. Users must be a member of the sysadmin fixed server role to use SQLAgent:Alerts.
See Also
Concepts
Other Resources
sys.dm_os_performance_counters