我使用的是log4net的MemoryAppender顯示在窗體的文本框我的log4net的輸出錯過高速日誌事件。我的配置文件的相關部分是:log4net的MemoryAppender似乎
<appender name="MemoryAppender" type="log4net.Appender.MemoryAppender" >
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %date %message%newline" />
</layout>
</appender>
,更新形式由計時器所觸發,看起來像代碼:
var events = _memoryAppender.GetEvents();
foreach (var loggingEvent in events)
{
textBoxOutput.Text += loggingEvent.Level + " " + loggingEvent.MessageObject + Environment.NewLine;
}
_memoryAppender.Clear();
這是工作,但是當我的應用程序日誌很多短時間內的消息我似乎沒有看到它們。有沒有人有一個想法是怎麼回事?
由於我使用Chainsaw一種變通方法和UDP附加目的地:
<appender name="UdpAppender" type="log4net.Appender.UdpAppender">
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO"/>
<param name="LevelMax" value="ERROR"/>
</filter>
<param name="RemoteAddress" value="127.0.0.1" />
<param name="RemotePort" value="8080" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j, log4net" />
</appender>
我喜歡我自己的用戶界面更好,雖然如此,我仍然在尋找答案。
在你關心的情況下,有電鋸的一噸的新功能開發快照,看看這裏:http://people.apache.org/~sdeboy – Scott
酷。謝謝。 – chrismead