A good starting point for the servers you have direct access to is to work with Windows Performance Monitor. This MSDN article discusses which performance counters are most helpful in diagnosing stress and performance issues:
ASP.NET Performance Monitoring, and When to Alert Administrators
There are many performance counters
available for monitoring applications.
Choosing which ones to include in
performance logs can be tricky, and
learning how to interpret them is an
art. This article should help you feel
more comfortable with both of these
tasks.
These are some interesting counters for IIS and ASP.NET:
- Processor:
- Process (aspnet_wp)
- % Processor Time
- Private Bytes
- Virtual Bytes
-Handle Count
- Microsoft .NET CLR Exceptions\
- ASP.NET
- Application Restarts
- Requests Rejected
- Memory
- Web Service
- Current Connections
- ISAPI Extension Requests/sec
For the sites you only have access to the IIS log files, I would use IIS Logparser for analyzing possible problems or bottlenecks. There is a nice blog post on blogs.iis.net:
How To: IIS and Log Parser 2.2
As IIS administrators we come across
many scenarios wherein we are asked to
analyse the overall performance of a
web server. There are various steps
involved in it, however, analysing IIS
log files without a proper tool can be
a pain. It's very easy to get lost in
the lines. Log Parser is a tool that I
rely upon when it comes to manual IIS
log file analysis. It's a cool tool
that provides universal query access
to text-based data, such as .log
files.