Welcome to the definitive directory and guide to .NET logging tools, frameworks
and articles. Whether you are looking for a .NET logging tool or just want to learn more about the topic
in general, this website should help you getting started. Please see below for list of popular logging tools
and libraries, recommended articles and links. Also make sure to take a look at the .NET Logging Comparison
and Concepts & Features pages with explanations of the basic features of logging tools and libraries.
What's logging and tracing?
Logging (sometimes also called tracing) is used to record information about a program's execution for debugging and testing
purposes. Developers, testers and support engineers often use logging and tracing techniques to identify software problems,
for post-deployment debugging, monitoring live systems and auditing purposes.
Logging usually involves writing text messages
to log files or sending data to monitoring applications. Advanced and modern logging tools also support logging
of complex data structures, call stacks, threading behavior and also support real-time monitoring of applications over a network
or on a local machine.
.NET logging and tracing tools
C# Logger is a logging tool that supports sending events and messages to the Windows event log. The
API is similar to Apache's log4j.
The common data project provides functions principally for ASP.NET projects and includes
a logging module and an utility for creating custom event logs.
CSharp Dot Net Logger
C# .NET Logger is an extensible logging framework written in C# and comes with message queuing
and asynchronous logging capabilities.
DebugWriter is a simple class to help dump property values to the system console in order to
Microsoft's Enterprise Library comes with a .NET logging application block to write messages to the Windows
event log, text files, message queue and more.
Log4net is a tool to help programmers output log statements to different types of output targets. Log4net
is a port of the log4j Apache project.
Logger.NET is a logging framework that enables developers to log information such as method
invocation and variable values.
The LogThis C# logging framework supports custom profiles, dates in log file names and logging
to the Windows event log.
Logview4net is a log monitor and viewer for files, UDP packets, event logs, database tables
and console output and supports actions such as highlighting or ignoring messages.
NetTrace is a simple debug tracer that comes with its own tracing class and a built-in dialog
that allows developers to configure the tracing output.
NLog is a simple .NET logging library designed to be flexible. It supports processing diagnostic
messages with any .NET languages and supports multiple targets.
The NSpring framework includes a logging library that supports log files and log file archiving.
It also supports formatting data as XML.
ObjectGuy Logging Framework for .NET supports logging to the system Console, a file on disk, TCP/IP
SmartInspect is a logging tool for debugging and monitoring .NET, Java and Delphi applications and
includes a unique log file viewer and real-time monitoring application.
TcpTrace is a simple trace listener that receives trace messages via TCP. It can be used for tracing
and logging of Compact Framework applications.
This is a prototype debug tracer that includes a basic viewer application to view debug and
tracing messages in multiple windows.
This is a utility which facilitates your .NET application to publish debugging information and to view
them in real-time as they occur.
TrafficMonitor is a framework that generates web traffic log files similar to IIS but allows you to
configure the exact content of the resulting log files.
We are also happy to introduce you to our own SmartInspect .NET
logging tool. If you are looking for an advanced and high-performance logging solution for .NET that is
professionally supported, you should give SmartInspect
Articles and recommended links
Building a Logging Object in .NET
This article explains how to roll your own logging object if you prefer to build your own simple logging library.
The presented logging object supports logging to text files.
Tracing, Logging, and Threading Made Easy with .NET
Tracing and logging with Visual Basic.NET is the main topic of this article. It also explains how to use .NET'
built-in tracing capabilities in your projects.
Logging for .NET with SmartInspect
This article demonstrates the capabilities of the SmartInspect .NET logging tool and explains how to use and integrate it
into your .NET applications.
Event Logging in a .NET Web Service
This article describes the logging mechanism in a .NET web service. It demonstrates how to write to the Event log from a
.NET Web Service and explains how to resolve security issues related to event logging.
Error Logging using ASP.NET 2.0
Error logging is an important part of every web application. This article demonstrates how to implement
error logging in a ASP.NET 2.0 web application.
Asp.net Ajax Exception Logging
This article shows how to create an error logging system for ASP.NET AJAX to log errors in your client-side
Error and Event Logging in VB.NET
This tutorial explains how to build a custom logging class in Visual Basic.NET to log errors to the Windows
system event log.
A Provider-Based Service for ASP.NET Tracing
This article explains some of the new (in ASP.NET 2.0) tracing features such as the integration and unification of
ASP.NET 2.0's tracing with the System.Diagnostics tracing and listener support.
This walk-through explains how to build an ASP.NET control and module that enables developers to add support to log
client-side script errors back to the server.