Ben Curry - CISSP, SharePoint Server MVP

All MindsharpBlogs

http://www.microsoft.com/mspress/books/10623.aspx

My Links

Archives

Image Galleries

Blog Stats

Favorite SharePoint Books

My Favorite Blogs

SharePoint Server 2007 Performance Counters

I am often asked 'what do I monitor to keep my server farm healthy?' So, instead of sending emails over and over again, I put them in the upcoming best practices book and also listed them here.

 

Monitoring these counters first will give you your baseline. You should then stress test the farm using VSTS 2005 or 2008 and break your farm. Doing so should give you a rough idea of the thresholds for most of the below counters. Steve Smith and Penny Coventry wrote an outstanding step-by-step whitepaper on configuring Visual Studio for load testing. It was written for administrators and developers. I did not define these counters, I just pulled them from the SCOM management packs for SharePoint Server 2007 and WSS v3. Don't forget to also monitor dependencies, such as SQL Server!

 

Counter

Description

Details

Total Processor Time

The % Processor Time counter measures the percentage of elapsed time that the processor spends to execute a non-Idle thread

Object: Processor

Counter: %Processor Time

Instance: _Total

Processor Privileged Time

Use the % Privileged Time counter to measure the percentage of elapsed time that the process threads spent executing code in Privileged mode

Object: Processor

Counter: %Privileged Time

Instance: _Total

Processor User Time

Use the % User Time counter to measure the percentage of elapsed time the processor spends in User mode.

Object: Processor

Counter: % User Time

Instance: _Total

Excessive Processor Usage

It is calculated by monitoring the time that the service is inactive, and subtracting that value from 100%

Object: processor

Counter: % Processor Time

Instance: _Total

Process – W3WP Processor Time

Measures the % of elapsed time that all process threads use the processor

Object: Process

Counter: %Processor Time

Instance: w3wp

Processor Queue Length

If the threshold of this rule is exceeded, it indicates that the processor is not fast enough.

Object: System

Counter: Processor Queue Length

Page Faults per second

Use the counter Page Faults/sec to measure the average number of pages faulted per second

Object: Memory

Counter: Page Faults/sec

Available Disk Space

Use the % Free Space counter to calculate the percentage of total usable space

Object: LogicalDisk

Counter: % Free Space

_total

Disk Request Write Size

Uses the Disk Write Bytes/sec counter to measure the rate at which bytes are transferred to the disk during write operations

Object: PhysicalDisk

Counter: Disk Write Bytes/sec

Instance: _Total

Disk Request Write Count

Measures the rate of write operations on the disk

Object: PhysicalDisk

Counter: Disk Writes/sec

Instance: _Total

Disk Usage - Disk Time

Use the % Disk Time counter to calculate the percentage of elapsed time that the selected disk drive was busy servicing read or write requests

Object: PhysicalDisk

Counter: %Disk Time

Instance: _Total

Disk Block Read Size

Avg. Disk Bytes/Read counter to measure the average number of bytes transferred from the disk during read operations

Object: PhysicalDisk

Counter: Avg. Disk Bytes/Read

Instance: _Total

Disk Request Read Size

Measures the rate at which bytes are transferred from the disk during read operations via Disk Read Bytes/sec

Object: PhysicalDisk

Counter: Disk Read Bytes/sec

Instance: _Total

Disk Request Read Count

Measures the rate of read operations from the disk

Object: PhysicalDisk

Counter: Disk Reads/sec

Instance: _Total

Web Service Bytes Sent/sec

Measures the rate at which data bytes are being sent by the Web service

Object: Web Service

Counter: Bytes Sent/sec

Instance: _Total

Web Service Current Connections

Monitors current IIS connections

Object: Web Service

Counter: Current Connections

Instance: _Total (or per Web app)

Web Service

Use the Total Method Requests/sec counter to measure the rate at which HTTP requests are received

Object: Web Service

Counter: Total method Requests/sec

Instance: _Total (or specific Web apps)

Web Service Bytes Received/sec

Counter to measure the rate at which data bytes are received by the Web service

Object: Web Service

Counter: Bytes Received/sec

Instance: _Total (or per Web app)

Web Service Connection Attempts

Measures the rate at which connections to the Web service are being attempted

Object: Web Service

Counter: Connection Attempts/sec

Instance: _Total

W3WP Private Bytes

Measures the current size, in bytes, of memory that this process has allocated and that cannot be shared with other processes

Object: Process

Counter: Private Bytes

Instance: w3wp

W3WP Working Set

The Working Set is the set of memory pages recently touched by the threads in the process

Object: Process

Counter: Working Set

Instance:  w3wp

Committed Memory in use

Use the % Committed Bytes In Use counter to measure the ratio of the Memory\Committed Bytes counter to the Memory\Commit Limit counter

Object: Memory

Counter: % Committed Bytes In Use

Available Memory

Available MBytes counter to measure the amount of physical memory in MB immediately available for allocation to a process or for system use

Object: Memory

Counter: Available MBytes

Memory Cache Bytes

Shows the sum of the Memory\System Cache Resident Bytes, Memory\System Driver Resident Bytes, Memory\System Code Resident Bytes, and Memory\Pool Paged Resident Bytes

Object: Memory

Counter: Cache Bytes

.NET CLR Memory – Bytes

Uses the # Bytes in all Heaps counter to sum the following four other counters: Gen 0 Heap Size; Gen 1 Heap Size; Gen 2 Heap Size, and Large Object Heap Size

Object: .NET CLR Memory

Counter: # Bytes in all Heaps

Instance: _Global

.Net CLR Data-SQL client Failed connections

Use the SqlClient: Total # failed connects counter to count the total number of connection open attempts that have failed

Object: .NET CLR Data

Counter: SqlClient

Instance: Total # of failed attempts

.Net CLR Data-SQL client connections

Current number of active SQL connections

Object: .NET CLR Data

Counter: SqlClient

Instance: Current # pooled and nonpooled connections

.Net CLR memory – large Objects

Displays the current size of the Large Object Heap in bytes. Objects greater than 20 KB are treated as large objects by the Garbage Collector and are directly allocated in a special heap

Object: .NET CLR Memory

Counter: Large Object Heap size

Instance: _Global

Succeeded Search Queries

Use the Queries Succeeded counter to count the number of queries that produce successful searches

Object: SharePoint Search Indexer Catalogs

Counter: Queries Succeeded

Instance: Search

Search Query Rate

Monitors Query Rate

Object: SharePoint Search Indexer Catalogs

Counter: Queries

Instance: Search

Search – total # of Documents

Counts the total number of documents in the Index

Object: Indexing Service

Counter: Total # of documents

Cache Faults per Second

Cache activity is a reliable indicator of most application I/O operations.

Object: Memory

Counter: Cache Faults/sec

ASP.NET Requests per Second

Counts the number of requests per second

Object: ASP.NET Apps v2.0.50727

Counter: Requests/Sec

Instance: _Total

ASP.NET Cache – Hit ratio

Cache Total Hit Ratio counter to sum the ASP.NET application performance counters

Object: ASP.NET Applications

Counter: Cache Total Hit Ratio

Instance:  _Total

ASP.NET Cache Size

count the total number of entries within the cache (both internal and user added

Object: ASP.NET Applications

Counter: Cache Total Entries

Instance: _Total

Memory – pages per second

Measures the rate at which pages are read from or written to disk to resolve hard page faults

Object: Memory

Counter: Pages/sec

ASP.NET Worker Process Restart

Measures Worker Process Restarts

Object: ASP.NET

Counter: Worker Process Restarts

Paging File

Measures the percentage of the Page File instance in use

Object: Paging File

Counter: %Usage

Instance: _Total

W3WP Handle Count

This number is equal to the sum of the handles currently open by each thread in this process

Object: Process

Counter: Handle Count

Instance:  w3wp

Publishing Object Cache

Counts the current number of pools that are associated with the process

Object: SharePoint Publishing Cache

Counter: Publishing cache hits/sec

Total number of ISAPI Connections

Counts the number of ISAPI connections that Windows SharePoint Services is processing simultaneously.

Object: Web Service

Counter: Current ISAPI Extension Requests

Instance: _Total

Total number of ISAPI Requests

Number of ISAPI Requests per second

Object: Web Service

Counter: ISAPI Extension Request/sec

Instance: _Total

Excessive CPU Utilization

Use the % Processor Time counter to calculate the percentage of the elapsed time of all of the process threads used by the processor to execute instructions

Object: Process

Counter: %Processor Time

Instance: _Total

 

I will be demonstrating how to load test a farm at TechEd during the ITPro week. Come check it out!

Don't forget Steve and Penny's paper here: http://www.combined-knowledge.com/Downloads/HowToConfigStressTestProjectForMOSS07usingVS2008TS.pdf

Ben Curry, CISSP, SharePoint Server MVP

Mindsharp

http://mindsharpblogs.com/ben

http://www.microsoft.com/MSpress/books/10623.aspx

http://www.microsoft.com/MSPress/books/12197.aspx

 

posted on Wednesday, May 07, 2008 5:41 PM

Feedback

# Designing browser-enabled forms for performance in InfoPath Forms Services (Part 6) 6/30/2008 5:30 PM InfoPath Team Blog

Part 6 – Addendum: Links to related performance resources Welcome to the sixth article in our series

# InfoPath 2007 essential resources 9/2/2008 3:04 AM Code Eater

These links are from the InfoPath Team Blog I think they are essentials http://blogs.msdn.com/infopath/archive/2008/06/30/designing-browser-enabled-forms-for-performance-in-infopath-forms-services-part-6.aspx

# [MOSS 2007] - Outils de surveillance | hilpers 1/17/2009 2:14 PM Pingback/TrackBack

[MOSS 2007] - Outils de surveillance | hilpers

# InfoPath 2007 essential resources « Marcello Tonarelli Blog 3/16/2009 4:48 AM Pingback/TrackBack

InfoPath 2007 essential resources « Marcello Tonarelli Blog


Comments on this post are closed.
Title  
Name  
Url
CAPTCHA
Protected by Clearscreen.SharpHIPEnter the code you see:
Comments