One of my customers once asked me how to best monitor a MOSS farm. The answer seemed obvious: use Microsoft System Center Operations Manager 2007 or Microsoft Operations Manager 2005! However, the customer wanted to know how to monitor the farm without any special tools and preferably manually. The idea behind the request was that if it was known how to monitor something manually it was easier to implement that knowledge using the preferred in-house monitoring tool.
So after a quick brainstorm, this was my suggestion. Feel free to comment on the choices – or even better, suggest improvements!
The following areas should be monitored:
- Server availability
- Server Health
- Service Monitoring
- Event Log Monitoring
- Internet Information Services Monitoring
- Database Free Space Monitoring
The following 3-tiered topology is assumed:
- Web Front-ends
- Application Servers
- SQL Servers
The monitoring will focus on the MOSS and SQL aspects. General Windows server monitoring or monitoring of the supporting infrastructure like Active Directory and DNS is not part of this post.
Server availability
Each server in the farm shouold be periodically pinged to check they are alive.
Server Health
Server health is monitored slightly different on the three tiers in the topology:
The following checks should be performed on the Web Front-ends and Application Servers:
- Raise Error event íf
- Logical Disk Space Usage > 90%
- CPU Usage > 50%
- Memory Usage > 85%
- Raise Warning event íf
- Logical Disk Space Usage > 75%
- CPU Usage > 40%
- Memory Usage > 85%
The thresholds are slightly different on the SQL Servers:
- Raise Error event íf
- Logical Disk Space Usage > 90%
- CPU Usage > 45%
- Memory Usage > 85%
- Raise Warning event íf
- Logical Disk Space Usage > 75%
- CPU Usage > 35%
- Memory Usage > 75%
Service Monitoring
The following MOSS services should be running on the Web Front-ends and Application Servers:
- IIS Admin Service
- Windows SharePoint Services Administration
- Windows SharePoint Services Search
- Windows SharePoint Services Timer
- Windows SharePoint Services Search
- World Wide Web Publishing Service
The following SQL Server services should be running on the SQL Servers:
- SQL Server (MSSQLSERVER)
- SQL Server FullText Search
- SQL Server VSS Writer
Event Log Monitoring
The following event sources should be monitored on the Web Front-ends and application servers:
- Windows SharePoint Services 3 (Warnings)
- Windows SharePoint Services 3 Search (Errors and Warnings)
- Windows SharePoint Services 3.0 (Errors)
- Office Server Search (Errors and Warnings)
- Office SharePoint Server (Errors and Warnings)
- OSearch (Errors and Warnings)
- IISCTLS (Warnings)
The following event sources should be monitored on the SQL Servers:
- MSSQLSERVER
Internet Information Services Monitoring
The following Applications Pools should be monitored on the MOSS servers:
- SharePoint Central Administration v3
- OfficeServerApplicationPool
- SharedServices1 App
- MySite Web Application App Pool
- Every Web Application App Pool that is rated important
The following Applications Pools should be monitored on the MOSS servers:
- SharePoint Central Administration v3
- Office Server web Services
- Shared Services Web Application
- MySite Web Application
- Every Web Application that is rated important
Where to monitor the Web Applications and Applications Pools depend on how theiy are distributed in your environment.
Database Free Space Monitoring
The following databases should be monitored to ensure the free space is above 25%:
- TempDB
- SharePoint Config Databases
Multiple databases may exist and they are normally named SharePoint_Config* - SharePoint Content Databases
Multiple databases may exist and they are normally named WSS_Content* - SharePoint Search databases
Multiple databases may exist and they are normally named WSS_Search_* - SharePoint Shared Services DB
Multiple databases may exist and they are normally named SharedServices* - SharePoint Admin Content
Multiple databases may exist and they are normally named SharePoint_AdminContent*
I feel that implementing something like the above will take you a long way but it will never be a substiture for implementing a enterprise-ready monitoring solution like System Center Operations Manager 2007.
















