Note that there are some explanatory texts on larger screens.

plurals
  1. POlog4net.Config.XmlConfigurator.Configure() takes too long
    primarykey
    data
    text
    <p>I use Log4Net for logging. When the application starts, I call </p> <p>log4net.Config.XmlConfigurator.Configure();</p> <p>But this line takes 15 seconds to finish. Am I doing something wrong? Or is it normal?</p> <p>I am developing with ASP.NET MVC, an use Unity for dependency injection.</p> <p>At the application start, I call a Bootstrapper Initialise function</p> <pre><code>protected void Application_Start() { IUnityContainer container = Bootstrapper.Initialise(); ... ... } </code></pre> <p>In the Bootstrapper Initialize function, I register the type ILog.</p> <pre><code>private static IUnityContainer BuildUnityContainer() { var container = new UnityContainer(); ... ... container.RegisterType&lt;ILog&gt;("", new ContainerControlledLifetimeManager(), new InjectionFactory(factory =&gt; LogManager.GetLogger(typeof(HomeController).Assembly, connectionString))); ... ... } </code></pre> <p>At the beginning of GetLogger function I call the configure function</p> <pre><code>public static ILog GetLogger(Assembly assembly, string connectionString) { log4net.Config.XmlConfigurator.Configure(); //&lt;----- it takes 15 seconds to finish ... ... } </code></pre> <p><strong>EDIT<br> ---------------------------------------------------------------------------------</strong></p> <pre><code>&lt;log4net&gt; &lt;appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"&gt; &lt;bufferSize value="0" /&gt; &lt;connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /&gt; &lt;connectionString value="data source=[database server];initial catalog=[database name];integrated security=false;persist security info=True;User ID=[user];Password=[password]" /&gt; &lt;commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception],[UserId],[Operation],[EntityType],[EntityId],[IP],[Host],[SessionId],[LogGroup]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception, @UserId, @Operation, @EntityType, @EntityId, @IP, @Host, @SessionId, @LogGroup)" /&gt; &lt;parameter&gt; &lt;parameterName value="@log_date" /&gt; &lt;dbType value="DateTime" /&gt; &lt;layout type="log4net.Layout.RawTimeStampLayout" /&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@thread" /&gt; &lt;dbType value="String" /&gt; &lt;size value="255" /&gt; &lt;layout type="log4net.Layout.PatternLayout"&gt; &lt;conversionPattern value="%thread" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@log_level" /&gt; &lt;dbType value="String" /&gt; &lt;size value="50" /&gt; &lt;layout type="log4net.Layout.PatternLayout"&gt; &lt;conversionPattern value="%level" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@logger" /&gt; &lt;dbType value="String" /&gt; &lt;size value="255" /&gt; &lt;layout type="log4net.Layout.PatternLayout"&gt; &lt;conversionPattern value="%logger" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@message" /&gt; &lt;dbType value="String" /&gt; &lt;size value="4000" /&gt; &lt;layout type="log4net.Layout.PatternLayout"&gt; &lt;conversionPattern value="%message" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@exception" /&gt; &lt;dbType value="String" /&gt; &lt;size value="2000" /&gt; &lt;layout type="log4net.Layout.ExceptionLayout" /&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@UserId"/&gt; &lt;dbType value="Int32" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="UserId" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@IP"/&gt; &lt;dbType value="String" /&gt; &lt;size value="25" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="IP" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@Host"/&gt; &lt;dbType value="String" /&gt; &lt;size value="50" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="Host" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@LogGroup"/&gt; &lt;dbType value="Int32" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="LogGroup" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@Operation"/&gt; &lt;dbType value="Int32" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="Operation" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@EntityType"/&gt; &lt;dbType value="Int32" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="EntityType" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@EntityId"/&gt; &lt;dbType value="Int32" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="EntityId" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;parameter&gt; &lt;parameterName value="@SessionId"/&gt; &lt;dbType value="String" /&gt; &lt;size value="88" /&gt; &lt;layout type="log4net.Layout.RawPropertyLayout"&gt; &lt;key value="SessionId" /&gt; &lt;/layout&gt; &lt;/parameter&gt; &lt;/appender&gt; &lt;root&gt; &lt;level value="ALL" /&gt; &lt;appender-ref ref="AdoNetAppender" /&gt; &lt;/root&gt; &lt;/log4net&gt; </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload