Team LiB
Previous Section Next Section

Chapter 43. Monitoring Your Applications

IN BRIEF

Very often developers need to review what actions are performed at runtime in some part of source code (this need is especially important in the case of complex applications). The simplest way to retrieve this information is by debugging an application step by step and using various features of the Visual Studio.NET IDE, such as watching, quick watching, command windows, local windows, and so on. But this approach provides developers only some information while debugging. Debugging enables you to track down finite pieces of information, single lines of trouble code, and so on.

Another important task is monitoring an application as it runs, and one approach is to write information in some storage (database, file, console, and so forth). In that case, the developer has a full overview of all actions (exceptions, warnings, critical situations, debugging information, and so on) that occurred during the application process execution. The common way of writing and storing auxiliary information during an application process execution is logging.

A logging facility lets an application write out information as it runs, and captures that information for later analysis. The information in the log can be very detailed or very sparse. Examining the log is a useful post-mortem tool, helping you pinpoint when and where a problem occurs for more detailed analysis. Logging facilities are especially handy when debuggers are not available or are too intrusive.

The simplest way to log information is by using Console.WriteLine() and Console.Write() statements. But this method is very crude and inflexible. The .NET Framework proposes its own mechanism of logging information: tracing, debugging statements and trace listeners.

WHAT YOU NEED

RECOMMENDED SOFTWARE

.NET Framework

Visual Studio .NET

RECOMMENDED HARDWARE

.NET-enabled desktop client

SKILLS REQUIRED

C# coding


MONITORING YOUR APPLICATIONS AT A GLANCE

Debugging and Tracing Statements

872

  
 

Trace Listeners

876

Custom Trace Listeners

885

 

Trace Switches

882

  


    Team LiB
    Previous Section Next Section