Latest Posts
All,
I am on my way to the Norfolk - Hampton Virginia area. I will speak at the Hampton Roads SQL Server User Group on Thursday, May 15th, 6:30 PM at INFOTEC. I am speaking about SharePoint Designer and InfoPath Form Services support for a number of connection scenarios. It is going to be a great presentation.
Location: (Click her for the directions)
INFOTEC
5501 Greenwich Rd
Virginia Beach, VA 23462-6540
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
Greetings! I'm very excited to launch Happenings WhitePapers, the section on my site where I will be posting white papers that I have written on various SharePoint related topics. For starters, I wrote a whitepaper that covers the various scenarios and areas of concern around My Sites when employees leave the company. The following scenarios are addressed in my paper:
1. The employee has created a My Site and their AD account has been disabled.
2. The employee has created a My Site and their AD account has been deleted.
3. The employee has specified an individual as their manager in the organizational hierarchy on their profile, how does this affect their My Site when their AD account is deleted or disabled?
4. The employee has valuable intellectual property stored on their My Site; however the My Site has been inoperable ever since they left firm. How can we retrieve this information?
5. The employee has sub-sites under their My Site and other employees use those sub-sites for team collaboration. What will happen to these sites after the employee has left the firm? How can we move these sites to another location?
6. After many employees have left, do these “dead” My Sites still take up disk space, and if they do, how can we clean them up?
Also, I go through how to restore access to a My Site if an employee left the company but has since returned to the company, how to archive a My Site, and ideas on how you could place a “legal hold” on a My Site if a litigation is pending. Lastly, I conclude with a few relating best practices and recommendations.
I hope you like it, and stay tuned for more papers to be published in the future!
Best wishes,
Phil
[cross posted from http://philwicklund.com]
Ben Curry and I will be presenting a Post Con session on April 24, 2008 at the SharePoint Connections Conference. The session will be entitled. HPS301: Web Content Management (Bring Your Own Laptop). You can read the abstract describing the session below.
In this hands-on workshop, you'll learn how to leverage Office SharePoint Server 2007 to build “Content Driven” Web sites that are updated by the content owners while still maintaining a strong corporate branding. We’ll follow a recurring pattern of a short slide presentation followed by a longer “hands on” demo/lab. Attendees will be provided with handouts that contain click-by-click instructions that describe how to accomplish the lab. If you prefer not to have a computer in front of you, you’ll get just as much out of watching us demonstrate. All code snippets and materials needed to complete each lab will also be provided to the students. Attendees will complete the hands-on labs on their own laptops (or at home after class). The agenda for the day will include the following lessons.
• Introduction to “Content Driven” Web Sites
• Maintaining Corporate Branding with a Customized Master Page
• Controlling Content Input with a Custom Field Control
• Managing Content Placement with a Custom Layout Page
• Customizing SharePoint Navigation
• Optimizing Performance with Output Caching Profiles and the Object Cache
• Automating Content Deployment
I Hope to see you there!
When I first began working with Microsoft Search Server 2008 during the beta, I immediately missed the ability to create and manage global scopes at the SSP level. Exploring the various interfaces, it seemed that the default, All Sites, was the only one available and there was no link in the Search Administration page to create and manage other scopes that would be global across the SSP.
Digging around in the 12 hive layout files, I found the page that Microsoft Office SharePoint Server 2007 uses to manage SSP level scopes. By manually typing the URL, I discovered that MSS does indeed support global scopes. Someone simply forgot to add the link in the Search Administration page.
So, if you need additional global scopes, the URL is
<server>/SSP/Admin/_layouts/viewscopesssp.aspx?mode=ssp
or
<server>/SSP/Admin/_layouts/viewscopes.aspx?mode=ssp
Either one will open the management page for SSP-level (Global) scopes.
Have fun!
One of the most common document management questions I get is “how can I get multiple document templates in the ‘new’ drop-down menu of a document library?” this blog will walk you through step-by-step for the entire process. We will also look at how to use folders to ‘filter’ the content types for a given documents library.
First, you must create content types that have an associated template. Content types can have many items associated such as Document Information Panel, Site Columns (think metadata collection), workflows, expiration policies, and auditing policies. We are leveraging the Template functionality of content types here. For more information on content types, see http://blogs.msdn.com/martinkearn/archive/2006/03/27/561809.aspx.
We will create three content types named ‘Vacation Request’, ‘Sick Leave’, and ‘Salary Increase’, in a site content type group named ‘HR’.
To create a content type, browse to Site Settings à Galleries à Site Content Types. Select ‘Create’. IMPORTANT: To use a content type in a document library, it must inherent from ‘Document’ further up in the hierarchy. We will create a content type that inherits directly from Document.
First, create a new content type with the name Vacation Request. Be sure to select the parent content type from the Document Content Types group, and the parent content type Document. You can see I am creating a new logical group named HR.
Next, select Advanced Settings, and upload a document template. Check Upload a new document template and select Browse to choose one from your local computer.
Great! You now have a new content type and an associated template. Go back to your content type gallery. Create two more content types named Sick Leave Request and Salary Increase. Be sure to choose the HR group in the Existing group menu and define a document template.
Once you have created your content types, you should have a screen similar to this in your Content Type Gallery:
Now that you have created your content types, you need to prepare a document library to use them. Browse to any document library in the site where you created your content types. From the Settings menu of the document library, select Document Library Settings. Under General Settings, choose Advanced Settings. At the very top, select Yes, under Allow management of content types and select Ok. You can now go back to your document library settings and Add from existing site content types. Choose the HR group you created earlier.
When you now select the New drop-down, you will see all of your new templates!
If that’s all you were looking for, you’re done. But, if you want to create folders to filter the ‘New’ menu, then read on. First, create 3 Folders named Vacation Request, Sick Leave Request, and Salary Increase Request. Next, go back to your document library settings and Change new button order and Default Content Type.

<>
If you go back to your document library, you will notice only Document is shown in the new menu.
Next, Select ‘Change New Button Order’ in the drop-down menu on the Vacation Requests folder:

<>
Viola! You can now go into any folder and only get the associated template. Be aware this does not stop users from changing the content type in the browser or Office application.
Cheers.
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
I’ve uploaded my presentation and recordings from my presentation at last week’s Sydney SharePoint User group – “E-mailing MOSS”. We had a great turnout and some great questions too, and an active interest on how to integrate e-mails into MOSS. We demonstrated all the out-of-the-box e-mail/Outlook integration features and then extended the demonstration to include Exchange 2007 managed folders and the latest Colligo Pro client, including Outlook add-in. Feel free to post any follow-up questions via the Contact form on my blog.
Presentation: http://mindsharpblogs.com/files/kathy/e-mailingmoss.zip
Demo of Colligo e-mail add-in: http://mindsharpblogs.com/files/kathy/colligo1.zip
Demo of connecting to a Shared Documents document library: - http://mindsharpblogs.com/files/kathy/connecttooutlookshareddocuments.zip
Demo of connecting to a Discussion list:- http://mindsharpblogs.com/files/kathy/connecttooutlookdiscussion.zip
Demo of sending e-mail to a document library: - http://mindsharpblogs.com/files/kathy/sendemailtodocolibrary.zip
Demo of using Exchange 2007 managed folders to send to a Record Center: - http://mindsharpblogs.com/files/kathy/recordcenter.zip

ReMix08 is coming to Australia – mark the dates…
Sydney
May 20
Powerhouse Museum
Harris Street, Ultimo
Melbourne
May 22
Melbourne Town Hall
Cnr Swanston & Collins
Street, Melbourne
Session details and registration: - http://www.microsoft.com/australia/remix08/index.aspx
It’s for devs and designers, with sessions around Silverlight 2, Windows Presentation Foundation (WPF) 3.5, and using design tools like Expression Blend and Expression Web. Go check out the session details at the above URL - we hope to see you there!
While you’re about it, check out the Mix08 (held back in March this year) sessions: - http://sessions.visitmix.com/.
We have a very special event planned for May 5th (12:30pm – 2pm) with “Open Mike”….a session with Mike Fitzmaurice, which will be hosted at Microsoft, North Ryde (Sydney Office). Mark the date… Details below.
Sydney SharePoint User Group is pleased to bring back Mike Fitzmaurice to Australia– Monday May 5th 2008
Would you like to find out:
- How can you leverage Microsoft Office SharePoint technologies to provide a platform for collaboration, ECM, search, BI and social computing?
- The interoperability with MOSS and other line of business applications such as SAP?
- How SharePoint and Office can be the people friendly face of service oriented architecture?
Well, we’ve got just the man to answer those burning questions... Microsoft’s Mike Fitzmaurice, Enterprise Technology Strategist and former Technical Product manager for WSS/MOSS, has kindly agreed to hold a lunch time ‘Open Mike’ session when he visits Sydney in May.
We look forward to seeing you there!
Please click here to register for this event:- http://www.sharepointusers.org.au/Sydney/Lists/Open%20Mike/NewForm.aspx?Source=http://www.sharepointusers.org.au/sydney/Shared%20Resources/ThankYou.aspx or visit the Sydney SharePoint User Group home page for up-to-date details and information:- http://www.sharepointusers.org.au/Sydney/default.aspx.
Registration opens at 12:30pm and the Q&A session commence at 1:00pm. The May User Group will be held at the Microsoft’s office, 1 Epping Road, North Ryde, Sydney.
Food & Refreshments will be provided.
‘Open Mike’ – Mike Fitzmaurice Q&A
Date: Monday May 5th 2008
Time: 12:30-2:00pm
About Mike

Mike Fitzmaurice is an Enterprise Technology Strategist at Microsoft, advising customers, partners, and Microsoft teams on portal, collaboration, and search technology. He spent the past five years as a Technical Product Manager for Windows® SharePoint® Services and Microsoft® Office SharePoint® Server, focused on developer evangelism and interoperability issues. He joined Microsoft Corp. in December 1997 as a senior consultant for Microsoft Consulting Services, overseeing several development initiatives involving Exchange Server and SharePoint technology for a wide range of customers. Before joining Microsoft, Fitzmaurice served as Director of Research and Development at Advanced Paradigms Inc., a Washington, D.C.-based Microsoft Solution Provider Partner, as well as a five-year tenure as IT Director of the National Association of Broadcasters.
I'm a bit late with this blog as this new whitepaper was on the Combined Knowledge Web site earlier this month, but I've been at the 2008 MVP Global Summit in Seattle, and may I say it was awe inspiring. It was my first MVP summit and the other SharePoint MVPs and Lawrence Lui made it an event, that I will not forget for sometime. Thank you all! Look at: "SharePoint MVPs know how to have fun .. and give constructive product feedback", for more on what it was all about.
Well back to the subject of this blog. Back in January, Steve Smith, of Combined Knowledge and myself got together and wrote the white paper, "How to move a SharePoint Server 2007 32-bit environment to a 64-bit environment on Windows Server 2008 ". Well we've got back together again to document, How To Configure a Stress Test Project, you can find the whitepaper here -> http://www.combined-knowledge.com/Downloads%202007.htm.
Now of course, stress testing SharePoint is not new. I remember James Edelen demonstrating stress testing SharePoint Portal Server 2003 using Application Centre Test (ACT) at Mindsharp Summits, which he documented here -> http://mindsharpblogs.com/james/archive/2005/03/25/429.aspx. And of course Steve has been demonstrating stress testing for some time in both his courses and user group meetings. What is new about this whitepaper is that it documents the process using Visual Studio Team Suite 2008, which he recently demonstrated at the User Group Community event.
Other resources you will find useful include:

In this presentation, we'll show you how you can integrate e-mail in SharePoint sites, including using the out-of-the-box functionality and Outlook integration, as well as using Exchange 2007 managed folders and demonstrating the latest Colligo Contributor (V3.0) - including Outlook add-in - product. We'll cover both client side and server side configuration/considerations, as well as deployment and security considerations. For details, and registration, see http://www.sharepointusers.org.au/Sydney/default.aspx (or drop me an e-mail via my blog :-) )