我是log4net的新手并且正在阅读和阅读,并且不知道我的问题是什么。 这是配置:
<root>
<level value="DEBUG" />
<appender-ref ref="AdoNetAppender"/>
</root>
<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
<bufferSize value="1" />
<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<connectionString value="Server=XXXXX;Database=XXX;Network=XXXXX;User ID=XXXXX;Password=XXXXX" />
<commandType value="StoredProcedure" />
<commandText value="dbo.LogWrite" />
<parameter>
<parameterName value="@LogDate" />
<dbType value="DateTime" />
<layout type="log4net.Layout.RawTimeStampLayout" />
</parameter>
<parameter>
<parameterName value="@LogLevel" />
<dbType value="String" />
<size value="50" />
<layout type="log4net.Layout.PatternLayout" value="%level" />
</parameter>
<parameter>
<parameterName value="@Logger" />
<dbType value="String" />
<size value="255" />
<layout type="log4net.Layout.PatternLayout" value="%logger" />
</parameter>
<parameter>
<parameterName value="@UserID" />
<dbType value="Int32" />
<layout type="log4net.Layout.PatternLayout" value="%property{UserID}" />
</parameter>
<parameter>
<parameterName value="@Message" />
<dbType value="String" />
<size value="4000" />
<layout type="log4net.Layout.PatternLayout" value="%message" />
</parameter>
<parameter>
<parameterName value="@Exception" />
<dbType value="String" />
<size value="4000" />
<layout type="log4net.Layout.ExceptionLayout"/>
</parameter>
</appender>
当我进入.NET页面并在Page_Load中执行此语句时:
log.Error("hi")
我将此错误作为数据库表中的条目。但是如果我再次快速地访问这个页面,我总共得到3个条目?它表明,如果我在重新加载页面之前等待~10秒,我只能再获得一个条目。我已将buffersize设置为1.任何有同样问题的人?社区的大多数人倾向于说,如果有问题,那么最有可能是你的配置,但对我来说,我的配置看起来很好。
非常感谢任何能为此做出光明照射的人!
//丹尼尔
答案 0 :(得分:1)
Log4Net可能正常工作。它正在记录正在发生的事情。
你需要弄清楚为什么Page_Load在你不期望的时候正在执行。