

It does a ton of different operations on a schedule every few seconds. This is similar to monitoring each web request in your ASP.NET application versus monitoring the performance of the application as a whole.įor example, our monitoring agent for Windows is a Windows Service. It is better if you monitor smaller units of work. I would suggest breaking them down to the smallest logical units of work. Most Windows Services are likely to perform multiple operations. Job scheduler – It is possible to embed a job scheduler like Quartz within your Windows Service to trigger small jobs and scale them across servers.Timer based – Many Windows Services use timers to repeat a specific operation every few seconds like polling a database.

Queue listener – App continuously listens on a queue and each message picked up off a queue would be a unique operation.You need to identify them and then potentially monitor each different operation that your service executes. Think of an operation as a unit of work that is repeated over and over. By identifying these patterns, you can quickly evaluate the best way to identify operations in your code. Windows Services usually follow several common usage patterns. Identifying “Operations” in Your Windows Services In these use cases, tracking web requests can be done similarly as they are for ASP.NET without and special definition of the transactions. Note: Windows Services can be used to “self host” ASP.NET web applications without IIS. To properly monitor the performance of your Windows Services, you need to define the start and end of the transactions or “operations” they are performing. They typically start and run continuously until the server is turned off. Windows Services have no defined start or end to the work that they do. It is very simple for services like Retrace to identify each individual web request and track the performance of them.

Web applications have very defined “transactions” based on each ASP.NET web request. Monitoring Windows Services is much different than monitoring ASP.NET applications. Why Monitoring Windows Services is Different
