blob: ca148885de6b8bd7048dd794a57fe4d6264f2a99 [file] [log] [blame]
<?xml version="1.0" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to you under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<document>
<properties>
<author email="nicko at apache dot org">Nicko Cadell</author>
<title>Apache log4net: Examples</title>
</properties>
<meta name="keywords" content="log4net examples, log4net" />
<body>
<section id="main" name="Apache log4net&#x2122; Examples">
<section id="overview" name="Overview">
<p>
<strong>The following examples are only available in the log4net source download, not
on-line. To obtain the examples <a href="../download_log4net.cgi">download</a> the log4net source release.
</strong>
</p>
</section>
<section id="building" name="Building Examples">
<section id="building-1" name="Building An Example">
<p>
A single example can be build by running <span class="code">nant</span> from
the example directory.
</p>
<p>
For example running <span class="code">nant</span> in the
<span class="code">examples\net\1.0\Tutorials\ConsoleApp\cs</span> directory
will build the C# version of the Microsoft&#xae; .NET 1.0 ConsoleApp example.
</p>
<p>
<span class="code">nant</span> can be run in any directory containing a
<span class="code">nant.build</span> file. The typical behavior of the build file
is to build all projects under the current directory.
</p>
<p>
For example running <span class="code">nant</span> in the
<span class="code">examples\net\1.1</span> directory
will build all the examples for the .NET 1.1 platform.
</p>
</section>
<section id="building-all" name="Building All Examples">
<p>
To build all the examples either run <span class="code">nant</span> in the
<span class="code">examples</span> directory or you can specify the
<span class="code">compile-examples</span> target to the main log4net nant build.
</p>
</section>
<section id="building-vsnet" name="Visual Studio .NET">
<p>
There are Visual Studio .NET 2002 project files for the .NET 1.0 framework.
The solution files for C# and VB are in the examples\net\1.0
folder.
</p>
<p>
For the Managed C++ project there is a Visual Studio .NET 2003 project file
in the examples\net\1.1 folder.
</p>
</section>
</section>
<section id="examples" name="Examples">
<section id="consoleapp" name="Tutorial - ConsoleApp">
<p>
ConsoleApp shows how to write a simple console application that initializes
logging and logs various events.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>MONO 1.0</b>:
C#
</li>
<li>
<b>.NET 1.0</b>:
C#,
VB
</li>
<li>
<b>.NET 1.1</b>:
C++,
JScript.NET
</li>
<li>
<b>.NET Compact Framework 1.0</b>:
C#,
VB
</li>
<li>
<b>SSCLI 1.0</b>:
JScript.NET
</li>
</ul>
<p>
To run this example execute <span class="code">ConsoleApp.exe</span> from the build output directory.
</p>
</section>
<section id="webapp" name="Tutorial - WebApp">
<p>
ConsoleApp shows how to write a simple ASP.NET web application that initializes
logging and logs various events.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#,
VB
</li>
</ul>
<p>
To run this example you need to have an ASP.NET container application to
host the web application, for example IIS. In IIS create a new virtual
directory pointing to the WebApp src directory. Configure IIS to recognize
this virtual directory as an application. Open up a web browser, navigate to
the virtual directory and to the <span class="code">WebForm1.aspx</span> page within it.
</p>
</section>
<section id="remotingclient" name="Remoting - RemotingClient">
<p>
The RemotingClient application is a simple console application that configures
log4net with the RemotingAppender. This appender will attempt to deliver the
logging events to a remoting listener. This example should be run in conjunction
with the RemotingServer.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">RemotingClient.exe</span> from the build output directory.
</p>
</section>
<section id="remotingserver" name="Remoting - RemotingServer">
<p>
The RemotingServer application is a simple console application that listens for
logging events from a remote RemotingAppender and then logs them through the
local log4net instance. This example should be run in conjunction
with the RemotingClient.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">RemotingServer.exe</span> from the build output directory.
While this process is running execute the <span class="code">RemotingClient.exe</span> program on
the same machine. The logging events from the client are transferred to the server.
</p>
</section>
<section id="rep-simple" name="Repository - SimpleModule">
<p>
The SimpleModule is a class library that is intended to be used as part of
the SimpleApp example,
This class library uses the <span class="code">log4net.Config.Repository</span>
attribute to create a separate configuration space from other assemblies.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>MONO 1.0</b>:
C#
</li>
<li>
<b>.NET 1.0</b>:
C#,
VB
</li>
<li>
<b>.NET 1.1</b>:
JScript.NET
</li>
<li>
<b>SSCLI 1.0</b>:
C#
</li>
</ul>
<p>
This library is intended to be used as part of the SimpleApp example.
</p>
</section>
<section id="rep-shared" name="Repository - SharedModule">
<p>
The SharedModule is a class library that is intended to be used as part of
the SimpleApp example,
This class library uses log4net but does not attempt to configure logging.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>MONO 1.0</b>:
C#
</li>
<li>
<b>.NET 1.0</b>:
C#,
VB
</li>
<li>
<b>.NET 1.1</b>:
JScript.NET
</li>
<li>
<b>SSCLI 1.0</b>:
C#
</li>
</ul>
<p>
This library is intended to be used as part of the SimpleApp example.
</p>
</section>
<section id="rep-app" name="Repository - SimpleApp">
<p>
The SimpleApp example uses the SimpleModule and SharedModule to demonstrate
the ways in which multiple assemblies within the same process may be
separately configured.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>MONO 1.0</b>:
C#
</li>
<li>
<b>.NET 1.0</b>:
C#,
VB
</li>
<li>
<b>.NET 1.1</b>:
JScript.NET
</li>
<li>
<b>SSCLI 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">SimpleApp.exe</span> from the build output directory.
</p>
</section>
<section id="eventidlogapp" name="Extensibility - EventIDLogApp">
<p>
The EventIDLogApp example demonstrates using the log4net.Ext.EventID extension.
The extension needs to be built separately from the
<span class="code">extensions\net\1.0\log4net.Ext.EventID</span> directory.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">EventIDLogApp.exe</span> from the build output directory.
</p>
</section>
<section id="tracelogapp" name="Extensibility - TraceLogApp">
<p>
The TraceLogApp example demonstrates using the log4net.Ext.Trace extension.
The extension needs to be built separately from the
<span class="code">extensions\net\1.0\log4net.Ext.Trace</span> directory.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">TraceLogApp.exe</span> from the build output directory.
</p>
</section>
<section id="sampleappenders" name="SampleAppenders">
<p>
This project includes the following example appenders.
</p>
<ul>
<li>
AsyncAppender
</li>
<li>
FastDbAppender
</li>
<li>
FireEventAppender
</li>
<li>
MessageBoxAppender
</li>
<li>
MessageObjectExpanderAppender
</li>
<li>
MsmqAppender
</li>
<li>
PatternFileAppender
</li>
<li>
SimpleSmtpAppender
</li>
</ul>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">SampleAppendersApp.exe</span> from the build output directory.
</p>
</section>
<section id="samplelayouts" name="SampleLayouts">
<p>
This project includes the following example layouts.
</p>
<ul>
<li>
ForwardingLayout
</li>
<li>
LineWrappingLayout
</li>
</ul>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
To run this example execute <span class="code">SampleLayoutsApp.exe</span> from the build output directory.
</p>
</section>
<section id="perf-notlogging" name="Performance - NotLogging">
<p>
The NotLogging example benchmarks the performance of log4net logging statements in
user code in various scenarios including when logging is disabled.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>MONO 1.0</b>:
C#
</li>
<li>
<b>.NET 1.0</b>:
C#,
VB
</li>
</ul>
<p>
</p>
</section>
<section id="wmiappender" name="WmiAppender">
<p>
The WmiAppender sample shows an example appender that fires events through
Windows Management Instrumentation.
</p>
<p>
This example is available for the following platforms and languages. If a version
is not available for your chosen platform and language combination then select the
nearest platform for the appropriate language.
</p>
<ul>
<li>
<b>.NET 1.0</b>:
C#
</li>
</ul>
<p>
</p>
</section>
</section>
</section>
</body>
</document>