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.

Table of Contents

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.

SmartInspect .NET Logging

.NET logging and tracing tools

  • C# Logger
    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.

  • CommonData
    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
    DebugWriter is a simple class to help dump property values to the system console in order to inspect them.

  • Enterprise Library
    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
    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
    Logger.NET is a logging framework that enables developers to log information such as method invocation and variable values.

  • LogThis
    The LogThis C# logging framework supports custom profiles, dates in log file names and logging to the Windows event log.

  • logview4net
    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
    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
    NLog is a simple .NET logging library designed to be flexible. It supports processing diagnostic messages with any .NET languages and supports multiple targets.

  • NSpring
    The NSpring framework includes a logging library that supports log files and log file archiving. It also supports formatting data as XML.

  • ObjectGuy Framework
    ObjectGuy Logging Framework for .NET supports logging to the system Console, a file on disk, TCP/IP and memory.

  • SmartInspect
    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
    TcpTrace is a simple trace listener that receives trace messages via TCP. It can be used for tracing and logging of Compact Framework applications.

  • Traceract
    This is a prototype debug tracer that includes a basic viewer application to view debug and tracing messages in multiple windows.

  • TraceRT.NET
    This is a utility which facilitates your .NET application to publish debugging information and to view them in real-time as they occur.

  • Traffic Monitor
    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 a try.

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 JavaScript ajax code.

  • 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.

  • Logging JavaScript Errors To ASP.NET
    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.

SmartInspect .NET Logging