logging-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bode...@apache.org
Subject svn commit: r1293762 [8/15] - in /logging/log4net/site: ./ css/ release/ release/howto/ release/manual/
Date Sun, 26 Feb 2012 07:36:47 GMT
Modified: logging/log4net/site/release/framework-support.html
URL: http://svn.apache.org/viewvc/logging/log4net/site/release/framework-support.html?rev=1293762&r1=1293761&r2=1293762&view=diff
==============================================================================
--- logging/log4net/site/release/framework-support.html (original)
+++ logging/log4net/site/release/framework-support.html Sun Feb 26 07:36:45 2012
@@ -171,742 +171,742 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <!-- 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. -->
-
-    
-        <a name="main"></a><div class="section"><h2 id="main">Apache log4net&#x2122; Supported Frameworks</h2>
-        
-            <a name="summary"></a><div class="section"><h2 id="summary">Summary of .NET frameworks supported by log4net</h2>
-                <p>
-                    log4net is built on a number of different frameworks. Each new version of the frameworks add
-                    new features. To take advantage of these new features we must build log4net using the
-                    appropriate framework. We also maintain builds compatible with older versions of the frameworks.
-                </p>
-                <p>
-                    It is important to remember that the .NET frameworks support backward compatibility, that is
-                    a new version of the framework will run binary assemblies that were targeted to previous versions
-                    of the framework.
-                </p>
-                <p>
-                    While the number of different builds available may seem confusing, you only need to select the
-                    nearest build for your platform that is equal to or earlier than your chosen deployment framework.
-                    If you intend to deploy your application on the Microsoft&#xae; .NET Framework 1.0 don't pick the
-                    log4net build that is built against the Microsoft .NET Framework 1.1 because the .NET framework
-                    does not guarantee forward compatibility only backward compatibility.
-                </p>
-                <p>
-                    The lowest common denominator build is the CLI 1.0 Compatible build. This build is compatible with
-                    the ECMA/ISO CLI 1.0 standard APIs and will run on all frameworks that support the standard. (Note
-                    that the Microsoft .NET Compact Framework does not support this standard). Use this build if you
-                    intend to deploy you application on both the Microsoft .NET Frameworks and the Mono frameworks.
-                </p>
-                <p>
-                    log4net now builds on the following frameworks:
-                </p>
-                
-                <div class="table">
-                    <table border="0" class="bodyTable">
-                        <colgroup>
-                            <col style="text-align: left; white-space: nowrap" />
-                            <col style="text-align: left;" />
-                        </colgroup>
-                        <tr class="a">
-                            <th>Framework</th>
-                            <th>Website</th>
-                        </tr>
-                        <tr class="b" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 1.0</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
-                        </tr>
-                        <tr class="a" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 1.1</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
-                        </tr>
-                        <tr class="b" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 2.0</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
-                        </tr>
-                        <tr class="a" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 3.5</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
-                        </tr>
-                        <tr class="b" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 4.0</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
-                        </tr>
-                        <tr class="a" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 3.5 Client Profile</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/cc656912.aspx">http://msdn.microsoft.com/en-us/library/cc656912.aspx</a></td>
-                        </tr>
-                        <tr class="b" style="vertical-align: top;">
-                            <td>Microsoft .NET Framework 4.0 Client Profile</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/cc656912.aspx">http://msdn.microsoft.com/en-us/library/cc656912.aspx</a></td>
-                        </tr>
-                        <tr class="a" style="vertical-align: top;">
-                            <td>Microsoft .NET Compact Framework 1.0</td>
-                            <td><a class="externalLink" href="http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx">http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx</a></td>
-                        </tr>
-                        <tr class="b" style="vertical-align: top;">
-                            <td>Microsoft .NET Compact Framework 2.0</td>
-                            <td><a class="externalLink" href="http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx">http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx</a></td>
-                        </tr>
-                        <tr class="a" style="vertical-align: top;">
-                            <td>Mono</td>
-                            <td><a class="externalLink" href="http://www.mono-project.com">http://www.mono-project.com</a></td>
-                        </tr>
-                        <tr class="b" style="vertical-align: top;">
-                            <td>Microsoft Shared Source CLI 1.0</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/ms973879.aspx">http://msdn.microsoft.com/en-us/library/ms973879.aspx</a></td>
-                        </tr>
-                        <tr class="a" style="vertical-align: top;">
-                            <td>CLI 1.0 Compatible</td>
-                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/aa569283.aspx">http://msdn.microsoft.com/en-us/netframework/aa569283.aspx</a></td>
-                        </tr>
-                    </table>
-                </div>
-                <p>
-                    For most of these frameworks a log4net assembly targeting the framework is supplied.  Although it's 
-                    perfectly possible to use the .NET Framework 1.0 version of log4net on the .NET Framework 1.1, having 
-                    an assembly that really targets a specific framework allows us to use features in that framework that 
-                    are not available in other frameworks or remove features from log4net that are not supported in a 
-                    specific framework.
-                </p>
-                <p>
-                  There are no assemblies targeting the Compact
-                  Framework 1.0 or Microsoft Shared Source CLI 1.0 in
-                  the binary release, but they can be built from the
-                  source release.
-                </p>
-            </div>
-            
-            <a name="appenders"></a><div class="section"><h2 id="appenders">Appenders</h2>
-                <p>
-                    The appenders available to each framework depend on the functionality of the 
-                    framework and the platform it runs on:
-                </p>
-                <div class="table">
-                    <table border="0" class="bodyTable">
-                        <colgroup>
-                            <col style="text-align: left;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                            <col style="text-align: center;" />
-                        </colgroup>
-                        <tr class="a">
-                            <th>Appender</th>
-                            <th>.NET Framework 1.0</th>
-                            <th>.NET Framework 1.1</th>
-                            <th>.NET Framework 2.0</th>
-                            <th>.NET Framework 3.5</th>
-                            <th>.NET Framework 4.0</th>
-                            <th>.NET Framework 3.5 Client Profile</th>
-                            <th>.NET Framework 4.0 Client Profile</th>
-                            <th>.NET CF 1.0</th>
-                            <th>.NET CF 2.0</th>
-                            <th>Mono</th>
-                            <th>Shared Source CLI 1.0</th>
-                            <th>CLI 1.0 Compatible</th>
-                        </tr>
-                        <tr class="b">
-                            <td>AdoNetAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>AnsiColorTerminalAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>AspNetTraceAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td></td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>BufferingForwardingAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>ColoredConsoleAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                        </tr>
-                        <tr class="a">
-                            <td>ConsoleAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>DebugAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>EventLogAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td></td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>FileAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>ForwardingAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>LocalSyslogAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td></td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>ManagedColoredConsoleAppender</td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                        </tr>
-                        <tr class="b">
-                            <td>MemoryAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>NetSendAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                        </tr>
-                        <tr class="b">
-                            <td>OutputDebugStringAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td></td>
-                        </tr>
-                        <tr class="a">
-                            <td>RemoteSyslogAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>RemotingAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>RollingFileAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>SmtpAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td></td>
-                            <td></td>
-                            <td>x</td>
-                            <td></td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>SmtpPickupDirAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>TelnetAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="a">
-                            <td>TraceAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                        <tr class="b">
-                            <td>UdpAppender</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                            <td>x</td>
-                        </tr>
-                    </table>
-                </div>
-            </div>
-            
-            <a name="notes"></a><div class="section"><h2 id="notes">Framework Specific Notes</h2>
-                <a name="net1.0"></a><div class="section"><h2 id="net1.0">Microsoft .NET Framework 1.0</h2>
-                    <p>
-                        none
-                    </p>
-                </div>
-                
-                <a name="net1.1"></a><div class="section"><h2 id="net1.1">Microsoft .NET Framework 1.1</h2>
-                    <p>
-                        none
-                    </p>
-                </div>
-                
-                <a name="net2.0"></a><div class="section"><h2 id="net2.0">Microsoft .NET Framework 2.0</h2>
-                    <p>
-                        none
-                    </p>
-                </div>
-                
-                <a name="net3.5"></a><div class="section"><h2 id="net3.5">Microsoft .NET Framework 3.5</h2>
-                    <p>
-                        As of log4net 1.2.11 this version is identical
-                        to the .NET 2.0 version.
-                    </p>
-                </div>
-                
-                <a name="net4.0"></a><div class="section"><h2 id="net4.0">Microsoft .NET Framework 4.0</h2>
-                    <p>
-                        none
-                    </p>
-                </div>
-                
-                <a name="netcp3.5"></a><div class="section"><h2 id="netcp3.5">Microsoft .NET Framework 3.5 Client Profile</h2>
-                    <p>
-                        As of log4net 1.2.11 this version is identical
-                        to the .NET 3.5 version without support for
-                        ASP.NET specific appenders and patterns.
-                    </p>
-                </div>
-                
-                <a name="netcp4.0"></a><div class="section"><h2 id="netcp4.0">Microsoft .NET Framework 4.0 Client Profile</h2>
-                    <p>
-                        As of log4net 1.2.11 this version is identical
-                        to the .NET 4.0 version without support for
-                        ASP.NET specific appenders and patterns.
-                    </p>
-                </div>
-                
-                <a name="netcf1.0"></a><div class="section"><h2 id="netcf1.0">Microsoft .NET Compact Framework 1.0</h2>
-                            <div class="section"><div class="section"><h4>Assembly attributes<a name="Assembly_attributes"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support retrieving assembly level 
-                                attributes, therefore all log4net configuration attributes were removed from 
-                                the .NET Compact Framework 1.0 version of log4net.
-                            </p>
-                            <p>
-                                For Smart-device applications, the log4net system can be configured by passing 
-                                the location of the log4net configuration file to the
-                                <span class="code">log4net.Config.XmlConfigurator.Configure(FileInfo)</span>
-                                method in the entry point of the application.
-                            </p>
-                            <p>For example:</p>
-                            <p></p>
-                            <div class="code"><pre>
-namespace TestApp
-{
-    using System.IO;
-
-    public class EntryPoint
-    {
-        /// &lt;summary&gt;
-        /// Application entry point.
-        /// &lt;/summary&gt;
-        public static void Main() 
-        {
-            // Uncomment the next line to enable log4net internal debugging
-            // log4net.Util.LogLog.InternalDebugging = true;
-
-            // This will instruct log4net to look for a configuration file
-            // called config.log4net in the root directory of the device
-            log4net.Config.XmlConfigurator.Configure(new FileInfo(@&quot;\config.log4net&quot;));
-
-            ...
-            
-            // This will shutdown the log4net system
-            log4net.LogManager.Shutdown();
-        }
-    }
-}                        
-                            </pre></div>
-                            </div><div class="section"><h4>Notification events<a name="Notification_events"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support notification events during the 
-                                application shutdown, therefore log4net cannot automatically hook the 
-                                application shutdown notification.
-                            </p>
-                            <p>
-                                Applications will need to programmatically shutdown the log4net system during 
-                                the application's shutdown using the
-                                <span class="code">log4net.LogManager.Shutdown()</span>
-                                method in order to prevent losing logging events.
-                                See the code above for an example.
-                            </p>
-                            </div><div class="section"><h4>FileSystemWatcher<a name="FileSystemWatcher"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support the
-                                <span class="code">System.IO.FileSystemWatcher</span>
-                                class. As a result, the
-                                <span class="code">XmlConfiguratorAttribute.Watch</span>
-                                property and the 
-                                <span class="code">XmlConfigurator.ConfigureAndWatch</span>
-                                methods are not available. Watching changes to the log4net configuration 
-                                file is not supported on the .NET Compact Framework 1.0.
-                            </p>
-                            </div><div class="section"><h4>UserName<a name="UserName"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support the
-                                <span class="code">System.Security.Principal.WindowsIdentity</span> class.
-                                This is used to capture the current thread's user identity. Therefore
-                                the <span class="code">LoggingEvent.UserName</span> property will return the value 
-                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
-                            </p>
-                            </div><div class="section"><h4>Identity<a name="Identity"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support the
-                                <span class="code">System.Security.Principal.IPrincipal</span> interface.
-                                This is used to capture the current thread's user identity. Therefore
-                                the <span class="code">LoggingEvent.Identity</span> property will return the value 
-                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
-                            </p>
-                            </div><div class="section"><h4>Environment variables<a name="Environment_variables"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support retrieving environment 
-                                variables, therefore it's not possible to substitute environment variables in 
-                                parameter values when using the .NET Compact Framework 1.0 version of log4net.
-                            </p>
-                            </div><div class="section"><h4>Serialization<a name="Serialization"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support serialization, therefore none of 
-                                the log4net classes in the .NET Compact Framework 1.0 version are serializable.
-                            </p>
-                            </div><div class="section"><h4>LoggingEvent.Domain<a name="LoggingEvent.Domain"></a></h4>
-                            <p>
-                                The .NET Compact Framework 1.0 does not support AppDomain functionality. The
-                                friendly name for the current AppDomain is stored in the <span class="code">LoggingEvent.Domain</span>
-                                property and is accessed using the <span class="code">%a</span> pattern of the 
-                                <span class="code">PatternLayout</span>. On the .NET Compact Framework 1.0 this
-                                value is generated by taking the file name for the application's primary module.
-                            </p>
-                </div></div></div>
-                <a name="netcf2.0"></a><div class="section"><h2 id="netcf2.0">Microsoft .NET Compact Framework 2.0</h2>
-                    <p>
-                        See notes for .NET Compact Framework 1.0
-                    </p>
-                </div>
-                <a name="mono"></a><div class="section"><h2 id="mono">Mono</h2>
-                    <p>
-                        There are 2 separate builds of log4net for mono; Mono 1.0, built using the C# compiler in a mode 
-                        which is compatible with the CLI 1.0 language specification, and; Mono 2.0, built using the .NET 
-                        2.0 extensions to the C# language.
-                    </p>
-                
-                    <a name="mono1.0"></a><div class="section"><h2 id="mono1.0">Mono 1.0</h2>
-                        <p>
-                            none
-                        </p>
-                    </div>
-                    <a name="mono2.0"></a><div class="section"><h2 id="mono2.0">Mono 2.0</h2>
-                        <p>
-                            none
-                        </p>
-                    </div>
-                    
-                </div>
-                
-                <a name="sscli1.0"></a><div class="section"><h2 id="sscli1.0">Microsoft Shared Source CLI 1.0</h2>
-                            <div class="section"><div class="section"><h4>FileSystemWatcher<a name="FileSystemWatcher"></a></h4>
-                            <p>
-                                SSCLI 1.0 does not support the
-                                <span class="code">System.IO.FileSystemWatcher</span>
-                                class. As a result, the
-                                <span class="code">XmlConfiguratorAttribute.Watch</span>
-                                property and the 
-                                <span class="code">XmlConfigurator.ConfigureAndWatch</span>
-                                methods are not available. Watching changes to the log4net configuration 
-                                file is not supported on SSCLI 1.0.
-                            </p>
-                            </div><div class="section"><h4>UserName<a name="UserName"></a></h4>
-                            <p>
-                                SSCLI 1.0 does not support the
-                                <span class="code">System.Security.Principal.WindowsIdentity</span> class.
-                                This is used to capture the current thread's user identity. Therefore
-                                the <span class="code">LoggingEvent.UserName</span> property will return the value 
-                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
-                            </p>
-                            </div><div class="section"><h4>Identity<a name="Identity"></a></h4>
-                            <p>
-                                SSCLI 1.0 does not support the
-                                <span class="code">System.Security.Principal.IPrincipal</span> interface.
-                                This is used to capture the current thread's user identity. Therefore
-                                the <span class="code">LoggingEvent.Identity</span> property will return the value 
-                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
-                            </p>
-                </div></div></div>
-                
-                <a name="cli1.0"></a><div class="section"><h2 id="cli1.0">CLI 1.0 Compatible</h2>
-                    <p>
-                        This build of log4net is designed to run on any ECMA CLI 1.0 compatible runtime.
-                        The assembly does not support any platform specific features. The build includes
-                        the common subset of functionality found in the .NET 1.0 and Mono 1.0 builds.
-                        The output assembly is built using the Microsoft .NET 1.0 compiler and library.
-                    </p>
-                    <p>
-                        The log4net CLI 1.0 assembly is runtime compatible with the following frameworks:
-                    </p>
-                    <ul>
-                        <li>Microsoft .NET Framework 1.0 (and higher)</li>
-                        <li>Mono 1.0 (and higher)</li>
-                    </ul>
-                    <p>
-                        Only a Release build is generated for this configuration because the assembly
-                        debugging information has not been standardized.
-                    </p>
-                </div>
-                
-            </div>
-            
-        </div>
-        
-    
+        <!-- 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. -->
+
+    
+        <a name="main"></a><div class="section"><h2 id="main">Apache log4net&#x2122; Supported Frameworks</h2>
+        
+            <a name="summary"></a><div class="section"><h2 id="summary">Summary of .NET frameworks supported by log4net</h2>
+                <p>
+                    log4net is built on a number of different frameworks. Each new version of the frameworks add
+                    new features. To take advantage of these new features we must build log4net using the
+                    appropriate framework. We also maintain builds compatible with older versions of the frameworks.
+                </p>
+                <p>
+                    It is important to remember that the .NET frameworks support backward compatibility, that is
+                    a new version of the framework will run binary assemblies that were targeted to previous versions
+                    of the framework.
+                </p>
+                <p>
+                    While the number of different builds available may seem confusing, you only need to select the
+                    nearest build for your platform that is equal to or earlier than your chosen deployment framework.
+                    If you intend to deploy your application on the Microsoft&#xae; .NET Framework 1.0 don't pick the
+                    log4net build that is built against the Microsoft .NET Framework 1.1 because the .NET framework
+                    does not guarantee forward compatibility only backward compatibility.
+                </p>
+                <p>
+                    The lowest common denominator build is the CLI 1.0 Compatible build. This build is compatible with
+                    the ECMA/ISO CLI 1.0 standard APIs and will run on all frameworks that support the standard. (Note
+                    that the Microsoft .NET Compact Framework does not support this standard). Use this build if you
+                    intend to deploy you application on both the Microsoft .NET Frameworks and the Mono frameworks.
+                </p>
+                <p>
+                    log4net now builds on the following frameworks:
+                </p>
+                
+                <div class="table">
+                    <table border="0" class="bodyTable">
+                        <colgroup>
+                            <col style="text-align: left; white-space: nowrap" />
+                            <col style="text-align: left;" />
+                        </colgroup>
+                        <tr class="a">
+                            <th>Framework</th>
+                            <th>Website</th>
+                        </tr>
+                        <tr class="b" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 1.0</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
+                        </tr>
+                        <tr class="a" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 1.1</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
+                        </tr>
+                        <tr class="b" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 2.0</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
+                        </tr>
+                        <tr class="a" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 3.5</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
+                        </tr>
+                        <tr class="b" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 4.0</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
+                        </tr>
+                        <tr class="a" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 3.5 Client Profile</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/cc656912.aspx">http://msdn.microsoft.com/en-us/library/cc656912.aspx</a></td>
+                        </tr>
+                        <tr class="b" style="vertical-align: top;">
+                            <td>Microsoft .NET Framework 4.0 Client Profile</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/cc656912.aspx">http://msdn.microsoft.com/en-us/library/cc656912.aspx</a></td>
+                        </tr>
+                        <tr class="a" style="vertical-align: top;">
+                            <td>Microsoft .NET Compact Framework 1.0</td>
+                            <td><a class="externalLink" href="http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx">http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx</a></td>
+                        </tr>
+                        <tr class="b" style="vertical-align: top;">
+                            <td>Microsoft .NET Compact Framework 2.0</td>
+                            <td><a class="externalLink" href="http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx">http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx</a></td>
+                        </tr>
+                        <tr class="a" style="vertical-align: top;">
+                            <td>Mono</td>
+                            <td><a class="externalLink" href="http://www.mono-project.com">http://www.mono-project.com</a></td>
+                        </tr>
+                        <tr class="b" style="vertical-align: top;">
+                            <td>Microsoft Shared Source CLI 1.0</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/ms973879.aspx">http://msdn.microsoft.com/en-us/library/ms973879.aspx</a></td>
+                        </tr>
+                        <tr class="a" style="vertical-align: top;">
+                            <td>CLI 1.0 Compatible</td>
+                            <td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/aa569283.aspx">http://msdn.microsoft.com/en-us/netframework/aa569283.aspx</a></td>
+                        </tr>
+                    </table>
+                </div>
+                <p>
+                    For most of these frameworks a log4net assembly targeting the framework is supplied.  Although it's 
+                    perfectly possible to use the .NET Framework 1.0 version of log4net on the .NET Framework 1.1, having 
+                    an assembly that really targets a specific framework allows us to use features in that framework that 
+                    are not available in other frameworks or remove features from log4net that are not supported in a 
+                    specific framework.
+                </p>
+                <p>
+                  There are no assemblies targeting the Compact
+                  Framework 1.0 or Microsoft Shared Source CLI 1.0 in
+                  the binary release, but they can be built from the
+                  source release.
+                </p>
+            </div>
+            
+            <a name="appenders"></a><div class="section"><h2 id="appenders">Appenders</h2>
+                <p>
+                    The appenders available to each framework depend on the functionality of the 
+                    framework and the platform it runs on:
+                </p>
+                <div class="table">
+                    <table border="0" class="bodyTable">
+                        <colgroup>
+                            <col style="text-align: left;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                            <col style="text-align: center;" />
+                        </colgroup>
+                        <tr class="a">
+                            <th>Appender</th>
+                            <th>.NET Framework 1.0</th>
+                            <th>.NET Framework 1.1</th>
+                            <th>.NET Framework 2.0</th>
+                            <th>.NET Framework 3.5</th>
+                            <th>.NET Framework 4.0</th>
+                            <th>.NET Framework 3.5 Client Profile</th>
+                            <th>.NET Framework 4.0 Client Profile</th>
+                            <th>.NET CF 1.0</th>
+                            <th>.NET CF 2.0</th>
+                            <th>Mono</th>
+                            <th>Shared Source CLI 1.0</th>
+                            <th>CLI 1.0 Compatible</th>
+                        </tr>
+                        <tr class="b">
+                            <td>AdoNetAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>AnsiColorTerminalAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>AspNetTraceAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td></td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>BufferingForwardingAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>ColoredConsoleAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                        </tr>
+                        <tr class="a">
+                            <td>ConsoleAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>DebugAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>EventLogAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td></td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>FileAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>ForwardingAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>LocalSyslogAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td></td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>ManagedColoredConsoleAppender</td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                        </tr>
+                        <tr class="b">
+                            <td>MemoryAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>NetSendAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                        </tr>
+                        <tr class="b">
+                            <td>OutputDebugStringAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td></td>
+                        </tr>
+                        <tr class="a">
+                            <td>RemoteSyslogAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>RemotingAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>RollingFileAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>SmtpAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td></td>
+                            <td></td>
+                            <td>x</td>
+                            <td></td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>SmtpPickupDirAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>TelnetAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="a">
+                            <td>TraceAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                        <tr class="b">
+                            <td>UdpAppender</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                            <td>x</td>
+                        </tr>
+                    </table>
+                </div>
+            </div>
+            
+            <a name="notes"></a><div class="section"><h2 id="notes">Framework Specific Notes</h2>
+                <a name="net1.0"></a><div class="section"><h2 id="net1.0">Microsoft .NET Framework 1.0</h2>
+                    <p>
+                        none
+                    </p>
+                </div>
+                
+                <a name="net1.1"></a><div class="section"><h2 id="net1.1">Microsoft .NET Framework 1.1</h2>
+                    <p>
+                        none
+                    </p>
+                </div>
+                
+                <a name="net2.0"></a><div class="section"><h2 id="net2.0">Microsoft .NET Framework 2.0</h2>
+                    <p>
+                        none
+                    </p>
+                </div>
+                
+                <a name="net3.5"></a><div class="section"><h2 id="net3.5">Microsoft .NET Framework 3.5</h2>
+                    <p>
+                        As of log4net 1.2.11 this version is identical
+                        to the .NET 2.0 version.
+                    </p>
+                </div>
+                
+                <a name="net4.0"></a><div class="section"><h2 id="net4.0">Microsoft .NET Framework 4.0</h2>
+                    <p>
+                        none
+                    </p>
+                </div>
+                
+                <a name="netcp3.5"></a><div class="section"><h2 id="netcp3.5">Microsoft .NET Framework 3.5 Client Profile</h2>
+                    <p>
+                        As of log4net 1.2.11 this version is identical
+                        to the .NET 3.5 version without support for
+                        ASP.NET specific appenders and patterns.
+                    </p>
+                </div>
+                
+                <a name="netcp4.0"></a><div class="section"><h2 id="netcp4.0">Microsoft .NET Framework 4.0 Client Profile</h2>
+                    <p>
+                        As of log4net 1.2.11 this version is identical
+                        to the .NET 4.0 version without support for
+                        ASP.NET specific appenders and patterns.
+                    </p>
+                </div>
+                
+                <a name="netcf1.0"></a><div class="section"><h2 id="netcf1.0">Microsoft .NET Compact Framework 1.0</h2>
+                            <div class="section"><div class="section"><h4>Assembly attributes<a name="Assembly_attributes"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support retrieving assembly level 
+                                attributes, therefore all log4net configuration attributes were removed from 
+                                the .NET Compact Framework 1.0 version of log4net.
+                            </p>
+                            <p>
+                                For Smart-device applications, the log4net system can be configured by passing 
+                                the location of the log4net configuration file to the
+                                <span class="code">log4net.Config.XmlConfigurator.Configure(FileInfo)</span>
+                                method in the entry point of the application.
+                            </p>
+                            <p>For example:</p>
+                            <p></p>
+                            <div class="code"><pre>
+namespace TestApp
+{
+    using System.IO;
+
+    public class EntryPoint
+    {
+        /// &lt;summary&gt;
+        /// Application entry point.
+        /// &lt;/summary&gt;
+        public static void Main() 
+        {
+            // Uncomment the next line to enable log4net internal debugging
+            // log4net.Util.LogLog.InternalDebugging = true;
+
+            // This will instruct log4net to look for a configuration file
+            // called config.log4net in the root directory of the device
+            log4net.Config.XmlConfigurator.Configure(new FileInfo(@&quot;\config.log4net&quot;));
+
+            ...
+            
+            // This will shutdown the log4net system
+            log4net.LogManager.Shutdown();
+        }
+    }
+}                        
+                            </pre></div>
+                            </div><div class="section"><h4>Notification events<a name="Notification_events"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support notification events during the 
+                                application shutdown, therefore log4net cannot automatically hook the 
+                                application shutdown notification.
+                            </p>
+                            <p>
+                                Applications will need to programmatically shutdown the log4net system during 
+                                the application's shutdown using the
+                                <span class="code">log4net.LogManager.Shutdown()</span>
+                                method in order to prevent losing logging events.
+                                See the code above for an example.
+                            </p>
+                            </div><div class="section"><h4>FileSystemWatcher<a name="FileSystemWatcher"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support the
+                                <span class="code">System.IO.FileSystemWatcher</span>
+                                class. As a result, the
+                                <span class="code">XmlConfiguratorAttribute.Watch</span>
+                                property and the 
+                                <span class="code">XmlConfigurator.ConfigureAndWatch</span>
+                                methods are not available. Watching changes to the log4net configuration 
+                                file is not supported on the .NET Compact Framework 1.0.
+                            </p>
+                            </div><div class="section"><h4>UserName<a name="UserName"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support the
+                                <span class="code">System.Security.Principal.WindowsIdentity</span> class.
+                                This is used to capture the current thread's user identity. Therefore
+                                the <span class="code">LoggingEvent.UserName</span> property will return the value 
+                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
+                            </p>
+                            </div><div class="section"><h4>Identity<a name="Identity"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support the
+                                <span class="code">System.Security.Principal.IPrincipal</span> interface.
+                                This is used to capture the current thread's user identity. Therefore
+                                the <span class="code">LoggingEvent.Identity</span> property will return the value 
+                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
+                            </p>
+                            </div><div class="section"><h4>Environment variables<a name="Environment_variables"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support retrieving environment 
+                                variables, therefore it's not possible to substitute environment variables in 
+                                parameter values when using the .NET Compact Framework 1.0 version of log4net.
+                            </p>
+                            </div><div class="section"><h4>Serialization<a name="Serialization"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support serialization, therefore none of 
+                                the log4net classes in the .NET Compact Framework 1.0 version are serializable.
+                            </p>
+                            </div><div class="section"><h4>LoggingEvent.Domain<a name="LoggingEvent.Domain"></a></h4>
+                            <p>
+                                The .NET Compact Framework 1.0 does not support AppDomain functionality. The
+                                friendly name for the current AppDomain is stored in the <span class="code">LoggingEvent.Domain</span>
+                                property and is accessed using the <span class="code">%a</span> pattern of the 
+                                <span class="code">PatternLayout</span>. On the .NET Compact Framework 1.0 this
+                                value is generated by taking the file name for the application's primary module.
+                            </p>
+                </div></div></div>
+                <a name="netcf2.0"></a><div class="section"><h2 id="netcf2.0">Microsoft .NET Compact Framework 2.0</h2>
+                    <p>
+                        See notes for .NET Compact Framework 1.0
+                    </p>
+                </div>
+                <a name="mono"></a><div class="section"><h2 id="mono">Mono</h2>
+                    <p>
+                        There are 2 separate builds of log4net for mono; Mono 1.0, built using the C# compiler in a mode 
+                        which is compatible with the CLI 1.0 language specification, and; Mono 2.0, built using the .NET 
+                        2.0 extensions to the C# language.
+                    </p>
+                
+                    <a name="mono1.0"></a><div class="section"><h2 id="mono1.0">Mono 1.0</h2>
+                        <p>
+                            none
+                        </p>
+                    </div>
+                    <a name="mono2.0"></a><div class="section"><h2 id="mono2.0">Mono 2.0</h2>
+                        <p>
+                            none
+                        </p>
+                    </div>
+                    
+                </div>
+                
+                <a name="sscli1.0"></a><div class="section"><h2 id="sscli1.0">Microsoft Shared Source CLI 1.0</h2>
+                            <div class="section"><div class="section"><h4>FileSystemWatcher<a name="FileSystemWatcher"></a></h4>
+                            <p>
+                                SSCLI 1.0 does not support the
+                                <span class="code">System.IO.FileSystemWatcher</span>
+                                class. As a result, the
+                                <span class="code">XmlConfiguratorAttribute.Watch</span>
+                                property and the 
+                                <span class="code">XmlConfigurator.ConfigureAndWatch</span>
+                                methods are not available. Watching changes to the log4net configuration 
+                                file is not supported on SSCLI 1.0.
+                            </p>
+                            </div><div class="section"><h4>UserName<a name="UserName"></a></h4>
+                            <p>
+                                SSCLI 1.0 does not support the
+                                <span class="code">System.Security.Principal.WindowsIdentity</span> class.
+                                This is used to capture the current thread's user identity. Therefore
+                                the <span class="code">LoggingEvent.UserName</span> property will return the value 
+                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
+                            </p>
+                            </div><div class="section"><h4>Identity<a name="Identity"></a></h4>
+                            <p>
+                                SSCLI 1.0 does not support the
+                                <span class="code">System.Security.Principal.IPrincipal</span> interface.
+                                This is used to capture the current thread's user identity. Therefore
+                                the <span class="code">LoggingEvent.Identity</span> property will return the value 
+                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
+                            </p>
+                </div></div></div>
+                
+                <a name="cli1.0"></a><div class="section"><h2 id="cli1.0">CLI 1.0 Compatible</h2>
+                    <p>
+                        This build of log4net is designed to run on any ECMA CLI 1.0 compatible runtime.
+                        The assembly does not support any platform specific features. The build includes
+                        the common subset of functionality found in the .NET 1.0 and Mono 1.0 builds.
+                        The output assembly is built using the Microsoft .NET 1.0 compiler and library.
+                    </p>
+                    <p>
+                        The log4net CLI 1.0 assembly is runtime compatible with the following frameworks:
+                    </p>
+                    <ul>
+                        <li>Microsoft .NET Framework 1.0 (and higher)</li>
+                        <li>Mono 1.0 (and higher)</li>
+                    </ul>
+                    <p>
+                        Only a Release build is generated for this configuration because the assembly
+                        debugging information has not been standardized.
+                    </p>
+                </div>
+                
+            </div>
+            
+        </div>
+        
+    
 
       </div>
     </div>

Propchange: logging/log4net/site/release/framework-support.html
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: logging/log4net/site/release/howto/chainsaw.html
URL: http://svn.apache.org/viewvc/logging/log4net/site/release/howto/chainsaw.html?rev=1293762&r1=1293761&r2=1293762&view=diff
==============================================================================
--- logging/log4net/site/release/howto/chainsaw.html (original)
+++ logging/log4net/site/release/howto/chainsaw.html Sun Feb 26 07:36:45 2012
@@ -172,103 +172,103 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <!-- 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. -->
-
-    
-        <a name="main"></a><div class="section"><h2 id="main">How To view logging events using Apache log4j Chainsaw</h2>
-            <p>
-                Apache log4j&#x2122; includes <a class="externalLink" href="http://logging.apache.org/log4j/docs/chainsaw.html">Apache Chainsaw&#x2122;</a>
-                a graphical log viewer. 
-            </p>
-            <p>
-                Chainsaw can either receive and display log events in realtime over 
-                the network, or it can load a previously created log file.
-            </p>
-            
-            <p>
-                Before Chainsaw can display data, one or more receivers must be setup. 
-                This is usually done by specifying an xml config file when the program 
-                first starts up. <br />
-                Save one or more of the sample xml config files to your local system and 
-                load them when Chainsaw starts.
-            </p>
-            
-            <a name="udp"></a><div class="section"><h2 id="udp">Logging via UDP</h2>
-                <p>
-                    Apache log4net&#x2122; can be configured to log messages via UDP in such a way that Chainsaw
-                    can receive and display them.
-                </p>
-            
-                <a name="udp-conf"></a><div class="section"><h2 id="udp-conf">log4net UDP Configuration</h2>
-                    <p>
-                        Configure log4net to use a UdpAppender with the following config snippet:
-                    </p>
-
-                    <div class="source"><pre>
-&lt;appender name=&quot;UdpAppender&quot; type=&quot;log4net.Appender.UdpAppender&quot;&gt;
-    &lt;remoteAddress value=&quot;127.0.0.1&quot; /&gt;
-    &lt;remotePort value=&quot;8080&quot; /&gt;
-    &lt;layout type=&quot;log4net.Layout.XmlLayoutSchemaLog4j&quot;&gt;
-        &lt;locationInfo value=&quot;true&quot; /&gt;
-    &lt;/layout&gt;
-&lt;/appender&gt;</pre></div>
-                </div>
-                
-                <a name="udp-chainsaw"></a><div class="section"><h2 id="udp-chainsaw">Chainsaw UDP receiver Configuration</h2>
-                    <p>
-                        Chainsaw should be configured to start a UDPReceiver using the 
-                        following configuration document:
-                    </p>
-
-                    <div class="source"><pre>
-&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
-&lt;!DOCTYPE log4j:configuration SYSTEM &quot;log4j.dtd&quot;&gt; 
-&lt;log4j:configuration xmlns:log4j=&quot;http://jakarta.apache.org/log4j/&quot; debug=&quot;true&quot;&gt;    
-    &lt;plugin name=&quot;UDPReceiver&quot; class=&quot;org.apache.log4j.net.UDPReceiver&quot;&gt;
-        &lt;param name=&quot;Port&quot; value=&quot;8080&quot; /&gt;
-    &lt;/plugin&gt;    
-&lt;/log4j:configuration&gt;</pre></div>
-                </div>
-                
-            </div>
-            
-            <a name="xml-file"></a><div class="section"><h2 id="xml-file">Logging to XML file</h2>
-                <p>
-                    Chainsaw can also load an XML log file if it is formatted according
-                    to the log4j schema. Use the following log4net config to output
-                    to file using the log4j schema:
-                </p>
-                
-                <div class="source"><pre>
-&lt;appender name=&quot;FileAppender&quot; type=&quot;log4net.Appender.FileAppender&quot;&gt;
-    &lt;file value=&quot;log-file.txt&quot; /&gt;
-    &lt;appendToFile value=&quot;true&quot; /&gt;
-    &lt;layout type=&quot;log4net.Layout.XmlLayoutSchemaLog4j&quot;&gt;
-        &lt;locationInfo value=&quot;true&quot; /&gt;
-    &lt;/layout&gt;
-&lt;/appender&gt;</pre></div>
-                
-                <p>
-                    To load the file into Chainsaw drag the file into the Chainsaw
-                    app and drop it on the tab labeled <i>Drag &amp; Drop log files here</i>.
-                </p>        
-            </div>
-            
-        </div>
-    
+        <!-- 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. -->
+
+    
+        <a name="main"></a><div class="section"><h2 id="main">How To view logging events using Apache log4j Chainsaw</h2>
+            <p>
+                Apache log4j&#x2122; includes <a class="externalLink" href="http://logging.apache.org/log4j/docs/chainsaw.html">Apache Chainsaw&#x2122;</a>
+                a graphical log viewer. 
+            </p>
+            <p>
+                Chainsaw can either receive and display log events in realtime over 
+                the network, or it can load a previously created log file.
+            </p>
+            
+            <p>
+                Before Chainsaw can display data, one or more receivers must be setup. 
+                This is usually done by specifying an xml config file when the program 
+                first starts up. <br />
+                Save one or more of the sample xml config files to your local system and 
+                load them when Chainsaw starts.
+            </p>
+            
+            <a name="udp"></a><div class="section"><h2 id="udp">Logging via UDP</h2>
+                <p>
+                    Apache log4net&#x2122; can be configured to log messages via UDP in such a way that Chainsaw
+                    can receive and display them.
+                </p>
+            
+                <a name="udp-conf"></a><div class="section"><h2 id="udp-conf">log4net UDP Configuration</h2>
+                    <p>
+                        Configure log4net to use a UdpAppender with the following config snippet:
+                    </p>
+
+                    <div class="source"><pre>
+&lt;appender name=&quot;UdpAppender&quot; type=&quot;log4net.Appender.UdpAppender&quot;&gt;
+    &lt;remoteAddress value=&quot;127.0.0.1&quot; /&gt;
+    &lt;remotePort value=&quot;8080&quot; /&gt;
+    &lt;layout type=&quot;log4net.Layout.XmlLayoutSchemaLog4j&quot;&gt;
+        &lt;locationInfo value=&quot;true&quot; /&gt;
+    &lt;/layout&gt;
+&lt;/appender&gt;</pre></div>
+                </div>
+                
+                <a name="udp-chainsaw"></a><div class="section"><h2 id="udp-chainsaw">Chainsaw UDP receiver Configuration</h2>
+                    <p>
+                        Chainsaw should be configured to start a UDPReceiver using the 
+                        following configuration document:
+                    </p>
+
+                    <div class="source"><pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
+&lt;!DOCTYPE log4j:configuration SYSTEM &quot;log4j.dtd&quot;&gt; 
+&lt;log4j:configuration xmlns:log4j=&quot;http://jakarta.apache.org/log4j/&quot; debug=&quot;true&quot;&gt;    
+    &lt;plugin name=&quot;UDPReceiver&quot; class=&quot;org.apache.log4j.net.UDPReceiver&quot;&gt;
+        &lt;param name=&quot;Port&quot; value=&quot;8080&quot; /&gt;
+    &lt;/plugin&gt;    
+&lt;/log4j:configuration&gt;</pre></div>
+                </div>
+                
+            </div>
+            
+            <a name="xml-file"></a><div class="section"><h2 id="xml-file">Logging to XML file</h2>
+                <p>
+                    Chainsaw can also load an XML log file if it is formatted according
+                    to the log4j schema. Use the following log4net config to output
+                    to file using the log4j schema:
+                </p>
+                
+                <div class="source"><pre>
+&lt;appender name=&quot;FileAppender&quot; type=&quot;log4net.Appender.FileAppender&quot;&gt;
+    &lt;file value=&quot;log-file.txt&quot; /&gt;
+    &lt;appendToFile value=&quot;true&quot; /&gt;
+    &lt;layout type=&quot;log4net.Layout.XmlLayoutSchemaLog4j&quot;&gt;
+        &lt;locationInfo value=&quot;true&quot; /&gt;
+    &lt;/layout&gt;
+&lt;/appender&gt;</pre></div>
+                
+                <p>
+                    To load the file into Chainsaw drag the file into the Chainsaw
+                    app and drop it on the tab labeled <i>Drag &amp; Drop log files here</i>.
+                </p>        
+            </div>
+            
+        </div>
+    
 
       </div>
     </div>

Propchange: logging/log4net/site/release/howto/chainsaw.html
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message