TracerX is an easy to use logger with advanced features for .NET applications. It can send output to multiple destinations (circular file, event log, etc.).
It has a powerful viewer that supports filtering by threads, category, trace level, and more. The viewer can also collapse and expand the output from each method call, show absolute or relative timestamps, and view/walk the call stack leading to any line of output. In my experience, these features make diagnosing problems much easier than using a plain text editor.
TracerX is a C# Visual Studio 2010 project (targeting .NET 3.5 Client Profile). It is used by many commercial products.
Latest logger version: 6.1.1304.13122
Latest viewer version: 6.1.1304.13122
View this CodeProject article
for documentation on how to use the latest version of the Logger.
The Log Viewer
Here is a screenshot of the TracerX viewer with output from the DeleteWorker thread highlighted in green.
Most of the following features can be discovered by by exploring the menus, except for those that are accessed by double-clicking.
Don't forget to try the context menus for the rows and column headers!
- You can filter the log by thread name, thread number, logger, trace level, and text wildcards (I would like to add method).
- The message text is indented according to stack depth.
- You can view absolute or relative timestamps. Any row can be the "zero time" record.
- You can collapse and expand method calls by double-clicking rows where "+" and "-" appear.
- You can collapse and expand rows that contain embedded newlines by double-clicking lines with yellow triangles.
- The crumb-bar allows you to see and navigate the call stack leading to the selected line.
- You can create coloring rules to highlight lines that match specified criteria.
- You can bookmark individual rows or ALL rows that...
- contain a specified search string.
- are from one or more selected threads, loggers, or trace levels.
- You can view the call stack (in a window) leading to a selected row and navigate to rows in the call stack.
- You can jump to the caller of the selected row (and then to its caller and so on).
- You can jump to the end of the current method.
- You can select rows and copy the text column or all columns to the clipboard.
- You can export the log to a CSV file.
- The File menu contains a list of recently created logs on the host computer so you don't have to search for them.
- You can customize the columns (show/hide columns, change their order).
- Long messages, with or without embedded newlines, can be viewed in a resizeable text window.