From commits-return-487-apmail-logging-commits-archive=logging.apache.org@logging.apache.org Tue Feb 14 17:12:03 2012 Return-Path: X-Original-To: apmail-logging-commits-archive@minotaur.apache.org Delivered-To: apmail-logging-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0DA269B3E for ; Tue, 14 Feb 2012 17:12:03 +0000 (UTC) Received: (qmail 81312 invoked by uid 500); 14 Feb 2012 17:12:03 -0000 Delivered-To: apmail-logging-commits-archive@logging.apache.org Received: (qmail 81285 invoked by uid 500); 14 Feb 2012 17:12:02 -0000 Mailing-List: contact commits-help@logging.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@logging.apache.org Delivered-To: mailing list commits@logging.apache.org Received: (qmail 81265 invoked by uid 99); 14 Feb 2012 17:12:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Feb 2012 17:12:02 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Feb 2012 17:11:45 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 316AA2388ABB; Tue, 14 Feb 2012 17:10:58 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1244132 [7/14] - in /logging/log4net/site: ./ css/ images/ images/logos/ release/ release/howto/ release/manual/ Date: Tue, 14 Feb 2012 17:10:56 -0000 To: commits@logging.apache.org From: bodewig@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120214171058.316AA2388ABB@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Added: logging/log4net/site/release/features.html URL: http://svn.apache.org/viewvc/logging/log4net/site/release/features.html?rev=1244132&view=auto ============================================================================== --- logging/log4net/site/release/features.html (added) +++ logging/log4net/site/release/features.html Tue Feb 14 17:10:54 2012 @@ -0,0 +1,490 @@ + + + + + + + Apache log4net: Features + + + + + + + + + + +
+ +
+
+
+ + + +

Apache log4net™ Features

+ +

Overview

+

+ log4net is a tool to help the programmer output log statements to a + variety of output targets. In case of problems with an application, + it is helpful to enable logging so that the problem can be located. + With log4net it is possible to enable logging at runtime without + modifying the application binary. The log4net package is designed so + that log statements can remain in shipped code without incurring a + high performance cost. It follows that the speed of logging (or + rather not logging) is crucial. +

+

+ At the same time, log output can be so voluminous that it quickly becomes + overwhelming. One of the distinctive features of log4net is the notion of + hierarchical loggers. Using these loggers it is possible to selectively + control which log statements are output at arbitrary granularity. +

+

+ log4net is designed with two distinct goals in mind: speed and flexibility +

+
+ +

Features

+
    +
  • Support for multiple frameworks
  • +
  • Output to multiple logging targets
  • +
  • Hierarchical logging architecture
  • +
  • XML Configuration
  • +
  • Dynamic Configuration
  • +
  • Logging Context
  • +
  • Proven architecture
  • +
  • Modular and extensible design
  • +
  • High performance with flexibility
  • +
+
+ +

Support for multiple frameworks

+

+ log4net runs on all ECMA CLI 1.0 compatible runtimes. + log4net has specific builds for the following frameworks: +

+
    +
  • Microsoft® .NET Framework 1.0
  • +
  • Microsoft .NET Framework 1.1
  • +
  • Microsoft .NET Framework 2.0
  • +
  • Microsoft .NET Framework 3.5
  • +
  • Microsoft .NET Framework 4.0
  • +
  • Microsoft .NET Framework 3.5 Client Profile
  • +
  • Microsoft .NET Framework 4.0 Client Profile
  • +
  • Microsoft .NET Compact Framework 1.0*
  • +
  • Microsoft .NET Compact Framework 2.0
  • +
  • Mono 1.0
  • +
  • Mono 2.0
  • +
  • Microsoft Shared Source CLI 1.0*
  • +
  • CLI 1.0 Compatible
  • +
+

The "Client Profile" builds are stripped down + versions of the "normal" builds that don't contain any + ASP.NET releated code - which for example means the + %aspnet-* patterns and the + AspNetTraceAppender are not available.

+ +

+ *Not + supported by the binary release but can be built + from the source release. +

+
+ +

Output to multiple logging targets

+

+ log4net ships with the following appenders (not on all frameworks): +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Type + Description
log4net.Appender.AdoNetAppender + Writes logging events to a database using either prepared statements or stored + procedures. +
log4net.Appender.AnsiColorTerminalAppender + Writes color highlighted logging events to a an ANSI terminal window. +
log4net.Appender.AspNetTraceAppender + Writes logging events to the ASP trace context. These can then be rendered at + the end of the ASP page or on the ASP trace page. +
log4net.Appender.ColoredConsoleAppender + Writes color highlighted logging events to the application's Windows Console. +
log4net.Appender.ConsoleAppender + Writes logging events to the application's Console. The events may go to either + the standard our stream or the standard error stream. +
log4net.Appender.DebugAppender + Writes logging events to the .NET system. +
log4net.Appender.EventLogAppender + Writes logging events to the Windows Event Log. +
log4net.Appender.FileAppender + Writes logging events to a file in the file system. +
log4net.Appender.LocalSyslogAppender + Writes logging events to the local syslog service (UNIX only). +
log4net.Appender.MemoryAppender + Stores logging events in an in memory buffer. +
log4net.Appender.NetSendAppender + Writes logging events to the Windows Messenger service. These messages are + displayed in a dialog on a users terminal. +
log4net.Appender.OutputDebugStringAppender + Writes logging events to the debugger. If the application has no + debugger, the system debugger displays the string. If the application has no + debugger and the system debugger is not active, the message is ignored. +
log4net.Appender.RemoteSyslogAppender + Writes logging events to a remote syslog service using UDP networking. +
log4net.Appender.RemotingAppender + Writes logging events to a remoting sink using .NET remoting. +
log4net.Appender.RollingFileAppender + Writes logging events to a file in the file system. The RollingFileAppender can + be configured to log to multiple files based upon date or file size + constraints. +
log4net.Appender.SmtpAppender + Sends logging events to an email address. +
log4net.Appender.SmtpPickupDirAppender + Sends logging events to an email + address but writes the emails to a + configurable directory rather than + sending them directly via SMTP. +
log4net.Appender.TelnetAppender + Clients connect via Telnet to receive logging events. +
log4net.Appender.TraceAppender + Writes logging events to the .NET trace system. +
log4net.Appender.UdpAppender + Sends logging events as connectionless UDP datagrams to a remote host or a + multicast group using a UdpClient. +
+
+

A special log4net.Appender.ForwardingAppender can + be used to wrap another appender, for example to + attach additional filters.

+
+ +

Hierarchical logging architecture

+

+ Hierarchical logging is an ideal fit with component based development. + Each component has its own of logger. When individually tested, the + properties of these loggers may be set as the developer requires. + When combined with other components, the loggers inherit the properties + determined by the integrator of the components. One can selectively elevate + logging priorities on one component without affecting the other components. + This is useful when you need a detailed trace from just a single component + without crowding the trace file with messages from other components. All + this can be done through configuration files; no code changes are required. +

+
+ +

XML Configuration

+

+ log4net is configured using an XML configuration file. The configuration + information can be embedded within other XML configuration files + (such as the application's .config file) or in a separate file. The + configuration is easily readable and updateable while retaining the + flexibility to express all configurations. +

+

+ Alternatively log4net can be configured programmatically. +

+
+ +

Dynamic Configuration

+

+ log4net can monitor its configuration file for changes and dynamically + apply changes made by the configurator. The logging levels, appenders, + layouts, and just about everything else can be adjusted at runtime. + In many cases it is possible to diagnose application issues without + terminating the process in question. This can a very valuable tool in + investigating issues with deployed applications. +

+
+ +

Logging Context

+

+ log4net can be used to collect logging context data in a way that is transparent + to the developer at the point of logging. The GlobalContext and the + ThreadContext allow the application to store contextual data that is + attached to logging messages. For instance, in a web service, + once the caller is authenticated the username of the caller could be + stored in a ThreadContext property. This property would then be automatically + logged as part of each subsequent logging message made from the same thread. +

+
+ +

Proven architecture

+

+ log4net is based on the highly successful Apache log4j™ logging library, + in development since 1996. This popular and proven architecture has + so far been ported to 12 languages. +

+
+ +
+ + +
+
+
+
+
+