how to monitor asp.net

16
Monitoring ASP.NET How to Monitor ASP.NET

Upload: power-admin-llc

Post on 07-May-2015

3.660 views

Category:

Technology


4 download

DESCRIPTION

In this presentation, we’re going to discuss monitoring ASP.NET. We’ll cover a number of things including: the main implications of monitoring ASP.NET, the most important performance counters to look for, performance counter values that should be measured and services dependent on ASP.NET that should be monitored.

TRANSCRIPT

Page 1: How to monitor asp.net

Monitoring ASP.NET

How to

Monitor ASP.NET

Page 2: How to monitor asp.net

What Will I Learn Here?

ASP.NET - A web development platform available in Windows Server

1What is ASP.NET?

Counters to

Monitor

3Performance

Counter Values

Page 3: How to monitor asp.net

ASP.net is a web development platform available in Windows Server. It was built by Microsoft to allow web developers to create web applications that are mainly hosted using IIS. Using ASP.NET developers can create dynamic websites that take advantage of its libraries.

So, what exactly is ASP.NET?

By using a programming language such as C# or Visual Basic, the code written in these libraries can be invoked and used in web pages. ASP.net files have the .aspx extension.

Page 4: How to monitor asp.net

The following excerpt from Microsoft’s website best describes ASP.NET in a single phrase: “ASP.net is a free, fully supported Web application framework that helps you create standards-based Web solutions.

It provides a rich set of features and easy integration with databases, web services and rich internet applications.

With features such as WebForms, MVC, dynamic data scaffolding, an AJAX framework, templates and themes, hundreds of built in controls and free developer tools, ASP.NET will enable you to build Web apps better and faster.”

So, what exactly is ASP.NET? – Cont’d

Page 5: How to monitor asp.net

There are many tools that can help you check your web application performance, but ASP.NET contains other performance counters that can be monitored.

So, what exactly is ASP.NET? – Cont’d

Also, this web application framework includes a tracing feature in which you can monitor your code and discover any errors related to the executed code.

Page 6: How to monitor asp.net

ASP.NET Performance Counters

When you are monitoring your web applications, in addition to the normal IIS counters, you can also monitor the following performance counters available with ASP.NET:

• ASP.NET\Application Restarts – this is a value that represents the total number of application restarts since the IIS server was last stopped.

• ASP.NET\Applications Running – the total number of ASP.NET applications that are currently running on the web server.

Page 7: How to monitor asp.net

ASP.NET Performance Counters – Cont’d

• ASP.NET\Request Execution Time – measures the number of milliseconds taken to execute a request. This counter is important in understanding how your application serves requests. This counter should be monitored carefully because it may indicate that either your app’s code is not efficient or there is a slow performance on your web server which impacts the overall performance of your ASP.NET applications.

• ASP.NET\Requests Rejected – indicates the total number of rejected applications.

Page 8: How to monitor asp.net

ASP.NET Performance Counters – Cont’d

• ASP.NET\Requests Queued – the total number of ASP.NET requests that are waiting to be executed.

• ASP.NET Applications\Requests/Sec – this value represents the number of ASP.NET requests per second

• ASP.NE\Requests Current – this is the number of requests that are currently managed by the ASP.NET ISAPI. This performance counter will let the application accept requests until the maximum threshold limit is reached. This counter is very helpful in monitoring the total number of requests that impact your application. Any value that is above the number defined in the requestQueueLimit parameter (configured in the processModel) will stop the application from accepting new requests.

• ASP.NET Applications\Errors Total – the total number of ASP.NET errors

Page 9: How to monitor asp.net

Preferred Performance Counters

There are so many ASP.NET performance counters that it is hard to find the best combination of performance counters to be monitored, while not impacting your server's performance or creating a huge list that cannot be monitored by system administrators.

Page 10: How to monitor asp.net

Preferred Performance Counters – Cont’d

Most technical sources suggest the following performance counters should be monitored with all ASP.NET applications:

• Processor(_Total)\% Processor Time• Process(aspnet_wp)\% Processor Time• Process(aspnet_wp)\Private Bytes• Process(aspnet_wp)\Virtual Bytes• Process(aspnet_wp)\Handle Count• Microsoft® .NET CLR Exceptions\# Exceps thrown / sec • ASP.NET\Application Restarts• ASP.NET\Requests Rejected• ASP.NET\Worker Process Restarts (not applicable to IIS 6.0)• Memory\Available Mbytes• Web Service\Current Connections• Web Service\ISAPI Extension Requests/sec

Page 11: How to monitor asp.net

Preferred Performance Counters – Cont’d

We have already gone over some of these performance counters in the last article, so now let’s focus on some of the new items shown here.

The Microsoft® .NET CLR Exceptions\# Exceps thrown /sec – this counter measures the number of exceptions thrown by your ASP.NET applications. In normal behavior web apps should not throw these exceptions, so keeping an eye on this counter should alert of any abnormal application performance.

As the number of thrown exceptions increases, the application’s performance decreases. Your monitoring tool must be configured to alert administrators if this value is more than 5% of the number of requests per second.

Page 12: How to monitor asp.net

There are many counters we will not get into, however these are the counters that have a great impact on application performance. Besides ASP.NET counters and application counters, there are others that should be monitored carefully because they indicate the overall resource utilization on your web server:

• Processor counter - %Processor Time% – this counter indicates the percentage of time threads are using system processors. The maximum threshold for this counter is 70%; any value above this limit indicates that either your applications are not performing well or your hardware components should be upgraded. Remember that this counter measures the performance of all processes running on the IIS server.

Even More Performance Counters!

Page 13: How to monitor asp.net

• Memory counter – Available Mbytes – this counter measures the amount of physical RAM available. If there is less than 20% free of the physical memory, consider replacing some hardware components.

• Process Counters – these are counters that measure the performance of a single process

• %Processor Time% – this is the percentage of CPU resources that a single process is using.

Even More Performance Counters! – Cont’d

Page 14: How to monitor asp.net

• Private Bytes – committed memory used by a process. An abnormal value can indicate memory leaking. Each worker process is instantiated within a process, so monitor these counters carefully. If the physical memory used by a process is more than 60% and the virtual memory is close to 1.6 GB of a virtual address space of 4 GB, it will start affecting your server’s performance.

• Thread Count – this indicates the number of threads active in a process.

• Handle Count – the number of handles in a process. This should be under 10000.

Even More Performance Counters! – Cont’d

Page 15: How to monitor asp.net

Any Suggestions for Other ASP.NET Counters to Monitor?

This should cover most of the important aspects of monitoring ASP.NET. Remember, there are an incredible amount of counters that can be monitored. We hope to have covered the most crucial ones here.

However, if you feel there are any we left out that could be very important to others, please feel free to post your thoughts below in our comments section.

Thanks, and stay tuned for our last of this 3 part series, regarding monitoring SQL Server. Cheers!

Stay tuned the next article, "How to Monitor ASP.NET" in this series from Network Wrangler.

Author: Popescu Dan-Alexandru

Page 16: How to monitor asp.net

What’s Your Message?

Brought to you by:

POWERADMIN.COM