.NET Applications and Performance Monitoring

Got a quick question about how to control the performance of my Windows-based application (console application, Win Forms application or services). I was looking for information on how to correctly and efficiently control performance (CPU usage, memory usage, processes, etc.) for applications developed in the .NET environment. Is there something in the code that I need to program to start accessibility from WMI? Is there a special way to create performance counters directly related to your application you created? I would like to get as much information as possible about the running application.

If this application is to be encoded in the application for calling WMI monitors, list examples.

Also, are there any off-the-shelf (open source) tools for testing application performance that are recommended to everyone?

+4
source share
3 answers

A great way to get an idea of ​​the performance of your application is to add ETW . This allows you to keep track of what's happening and collect timings as your app launches. If you are applying for an application, you can answer questions about how long the various actions in your application take.

.NET Windows ETW, , , - ..

ETW EventSource.

Windows PerfView .

+3

You can open Performance Monitorand already see all the performance counters .Net(and Windows) so that you are out of the field. This includes memory usage, usage CPU, blocking competition, exceptions, etc.

You can add your own performance counters and build them in exactly the same way using PerformanceCounter

+1
source

Source: https://habr.com/ru/post/1524630/


All Articles