You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4net-user@logging.apache.org by John Deviney <JD...@TWIA.ORG> on 2005/06/22 17:25:38 UTC

Log File Not Created with Pure XML Configuration

I have a configuration using FileAppender.  The log file is created only if
I configure through code like the following:
log4net.Config.XmlConfigurator.Configure(new
System.IO.FileInfo("tos.net-ri.exe.config"));  I should be able to do this
without code through the default application xml config file but I have had
no success.  My goal is to have log4net file logging through pure xml
configuration.

Environment:
log4net-1.2.9-beta
Visual Studio 2003/.Net 1.1
Win gui executable referencing a dll assembly and both are using log4net.

I am listing two different configurations and corresponding log4net trace
outputs.  One that does not work (the one I want to use) and an alternative
that does work.

1) PURE XML CONFIG DOES NOT WORK:

App.config file - 

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

   <configSections>
	   <section name="log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
   </configSections>
	
	<system.windows.forms jitDebugging="true" />
	
	<appSettings>
	   <add key="log4net.Internal.Debug" value="true"/>
	</appSettings>
		
   <log4net>
	   <appender name="LogFileAppender"
type="log4net.Appender.FileAppender">
		   <param name="File" value=".//tos.net-ri.log" /> 
			<param name="AppendToFile" value="false" />
			<layout type="log4net.Layout.PatternLayout">
				<param name="Header" value="[Entry]\r\n" />
				<param name="Footer" value="[Exit]\r\n" />
				<param name="ConversionPattern" value="%d
%-4r [%t] %-5p %c %x - %m%n" />
			</layout>
		</appender>
		<root>
			<level value="DEBUG" />
			<appender-ref ref="LogFileAppender" />
		</root>
	</log4net>
	
</configuration>

Log4net trace output - 

log4net: log4net assembly [log4net, Version=1.2.9.0, Culture=neutral,
PublicKeyToken=b32731d11ce58905]. Loaded from
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\log4net.dll]. (.NET
Runtime [1.1.4322.2032] on Microsoft Windows NT 5.0.2195.0)
log4net: log4net assembly [log4net, Version=1.2.9.0, Culture=neutral,
PublicKeyToken=b32731d11ce58905]. Loaded from
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\log4net.dll]. (.NET
Runtime [1.1.4322.2032] on Microsoft Windows NT 5.0.2195.0)
log4net: DefaultRepositorySelector: defaultRepositoryType
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tbot-server-proxy, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] Loaded From
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\tbot-server-proxy.dll]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] does not have a
RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] using repository
[log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: defaultRepositoryType
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tbot-server-proxy, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] Loaded From
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\tbot-server-proxy.dll]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] does not have a
RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] using repository
[log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository
[log4net-default-repository] using type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository
[log4net-default-repository] using type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tos.net-ri, Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tos.net-ri, Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null] Loaded From
[E:\TOS.Net\lag\tos.net\modules\tos.net-ri\bin\Debug\tos.net-ri.exe]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null] Loaded From
[E:\TOS.Net\lag\tos.net\modules\tos.net-ri\bin\Debug\tos.net-ri.exe]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null] does not have
a RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null] using
repository [log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: repository [log4net-default-repository]
already exists, using repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null] does not have
a RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.15021, Culture=neutral, PublicKeyToken=null] using
repository [log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: repository [log4net-default-repository]
already exists, using repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: Hierarchy: Shutdown called on Hierarchy
[log4net-default-repository]
log4net: Hierarchy: Shutdown called on Hierarchy
[log4net-default-repository]


2) XML CONFIG WITH Log4Net API INVOCATION WORKS:

API call in main Form.Main() - 

[STAThread]
static void Main() 
{
   log4net.Config.XmlConfigurator.Configure(new
System.IO.FileInfo("tos.net-ri.exe.config"));
   System.Windows.Forms.Application.Run(new MainForm());
}

App.config file - 

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

   <configSections>
	   <section name="log4net"
type="System.Configuration.IgnoreSectionHandler,log4net"/>
   </configSections>
	
	<system.windows.forms jitDebugging="true" />
	
	<appSettings>
	   <add key="log4net.Internal.Debug" value="true"/>
	</appSettings>
		
   <log4net>
	   <appender name="LogFileAppender"
type="log4net.Appender.FileAppender">
		   <param name="File" value=".//tos.net-ri.log" /> 
			<param name="AppendToFile" value="false" />
			<layout type="log4net.Layout.PatternLayout">
				<param name="Header" value="[Entry]\r\n" />
				<param name="Footer" value="[Exit]\r\n" />
				<param name="ConversionPattern" value="%d
%-4r [%t] %-5p %c %x - %m%n" />
			</layout>
		</appender>
		<root>
			<level value="DEBUG" />
			<appender-ref ref="LogFileAppender" />
		</root>
	</log4net>
	
</configuration>

Log4net trace output - 

log4net: log4net assembly [log4net, Version=1.2.9.0, Culture=neutral,
PublicKeyToken=b32731d11ce58905]. Loaded from
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\log4net.dll]. (.NET
Runtime [1.1.4322.2032] on Microsoft Windows NT 5.0.2195.0)
log4net: log4net assembly [log4net, Version=1.2.9.0, Culture=neutral,
PublicKeyToken=b32731d11ce58905]. Loaded from
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\log4net.dll]. (.NET
Runtime [1.1.4322.2032] on Microsoft Windows NT 5.0.2195.0)
log4net: DefaultRepositorySelector: defaultRepositoryType
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tos.net-ri, Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null] Loaded From
[E:\TOS.Net\lag\tos.net\modules\tos.net-ri\bin\Debug\tos.net-ri.exe]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null] does not have
a RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null] using
repository [log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: defaultRepositoryType
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tos.net-ri, Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null] Loaded From
[E:\TOS.Net\lag\tos.net\modules\tos.net-ri\bin\Debug\tos.net-ri.exe]
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null] does not have
a RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tos.net-ri,
Version=1.0.1999.14844, Culture=neutral, PublicKeyToken=null] using
repository [log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository
[log4net-default-repository] using type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository
[log4net-default-repository] using type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: XmlConfigurator: configuring repository
[log4net-default-repository] using file [tos.net-ri.exe.config]
log4net: XmlConfigurator: configuring repository
[log4net-default-repository] using stream
log4net: XmlConfigurator: loading XML configuration
log4net: XmlConfigurator: Configuring Repository
[log4net-default-repository]
log4net: XmlHierarchyConfigurator: Configuration update mode [Merge].
log4net: XmlHierarchyConfigurator: Logger [root] Level string is [DEBUG].
log4net: XmlHierarchyConfigurator: Logger [root] level set to
[name="DEBUG",value=30000].
log4net: XmlHierarchyConfigurator: Loading Appender [LogFileAppender] type:
[log4net.Appender.FileAppender]
log4net: XmlHierarchyConfigurator: Setting Property [File] to String value
[.//tos.net-ri.log]
log4net: XmlConfigurator: configuring repository
[log4net-default-repository] using file [tos.net-ri.exe.config]
log4net: XmlConfigurator: configuring repository
[log4net-default-repository] using stream
log4net: XmlConfigurator: loading XML configuration
log4net: XmlConfigurator: Configuring Repository
[log4net-default-repository]
log4net: XmlHierarchyConfigurator: Configuration update mode [Merge].
log4net: XmlHierarchyConfigurator: Logger [root] Level string is [DEBUG].
log4net: XmlHierarchyConfigurator: Logger [root] level set to
[name="DEBUG",value=30000].
log4net: XmlHierarchyConfigurator: Loading Appender [LogFileAppender] type:
[log4net.Appender.FileAppender]
log4net: XmlHierarchyConfigurator: Setting Property [File] to String value
[.//tos.net-ri.log]
log4net: XmlHierarchyConfigurator: Setting Property [AppendToFile] to
Boolean value [False]
log4net: XmlHierarchyConfigurator: Setting Property [AppendToFile] to
Boolean value [False]
log4net: PatternParser: Converter [message] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [newline] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: XmlHierarchyConfigurator: Setting Property [Header] to String value
[[Entry]\r\n]
log4net: XmlHierarchyConfigurator: Setting Property [Footer] to String value
[[Exit]\r\n]
log4net: XmlHierarchyConfigurator: Setting Property [ConversionPattern] to
String value [%d %-4r [%t] %-5p %c %x - %m%n]
log4net: PatternParser: Converter [d] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [r] Option [] Format
[min=4,max=2147483647,leftAlign=True]
log4net: PatternParser: Converter [message] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [newline] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: XmlHierarchyConfigurator: Setting Property [Header] to String value
[[Entry]\r\n]
log4net: XmlHierarchyConfigurator: Setting Property [Footer] to String value
[[Exit]\r\n]
log4net: XmlHierarchyConfigurator: Setting Property [ConversionPattern] to
String value [%d %-4r [%t] %-5p %c %x - %m%n]
log4net: PatternParser: Converter [d] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [r] Option [] Format
[min=4,max=2147483647,leftAlign=True]
log4net: PatternParser: Converter [literal] Option [ [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [t] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [] ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [p] Option [] Format
[min=5,max=2147483647,leftAlign=True]
log4net: PatternParser: Converter [literal] Option [ ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [c] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [x] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ - ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [t] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [] ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [p] Option [] Format
[min=5,max=2147483647,leftAlign=True]
log4net: PatternParser: Converter [literal] Option [ ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [c] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [x] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [literal] Option [ - ] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [m] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [m] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: PatternParser: Converter [n] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: XmlHierarchyConfigurator: Setting Property [Layout] to object
[log4net.Layout.PatternLayout]
log4net: FileAppender: Opening file for writing
[E:\TOS.Net\lag\tos.net\modules\tos.net-ri\bin\Debug\tos.net-ri.log] append
[False]
log4net: XmlHierarchyConfigurator: Created Appender [LogFileAppender]
log4net: XmlHierarchyConfigurator: Adding appender named [LogFileAppender]
to logger [root].
log4net: XmlHierarchyConfigurator: Hierarchy Threshold []
log4net: PatternParser: Converter [n] Option [] Format
[min=-1,max=2147483647,leftAlign=False]
log4net: XmlHierarchyConfigurator: Setting Property [Layout] to object
[log4net.Layout.PatternLayout]
log4net: FileAppender: Opening file for writing
[E:\TOS.Net\lag\tos.net\modules\tos.net-ri\bin\Debug\tos.net-ri.log] append
[False]
log4net: XmlHierarchyConfigurator: Created Appender [LogFileAppender]
log4net: XmlHierarchyConfigurator: Adding appender named [LogFileAppender]
to logger [root].
log4net: XmlHierarchyConfigurator: Hierarchy Threshold []
log4net: DefaultRepositorySelector: Creating repository for assembly
[tbot-server-proxy, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] Loaded From
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\tbot-server-proxy.dll]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] does not have a
RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] using repository
[log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: Creating repository for assembly
[tbot-server-proxy, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] Loaded From
[e:\tos.net\lag\tos.net\modules\tos.net-ri\bin\debug\tbot-server-proxy.dll]
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] does not have a
RepositoryAttribute specified.
log4net: DefaultRepositorySelector: Assembly [tbot-server-proxy,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null] using repository
[log4net-default-repository] and repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: repository [log4net-default-repository]
already exists, using repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: DefaultRepositorySelector: repository [log4net-default-repository]
already exists, using repository type
[log4net.Repository.Hierarchy.Hierarchy]
log4net: Hierarchy: Shutdown called on Hierarchy
[log4net-default-repository]
log4net: Hierarchy: Shutdown called on Hierarchy
[log4net-default-repository]


Any help is appreciated.

John Deviney
Texas Windstorm Insurance Association
5700 S. MoPac Exp., Building E, Suite 530
Austin, TX 78749
jdeviney@twia.org