我一直試圖在.net 4.5中使用ETW。我有一個WCF服務和控制檯應用程序,並且我想使用EventSource來編寫消息,但是,我很努力地理解如何創建我自己的ETW(EventSource和EventListener)來記錄文件(滾動文件)。ETW EventSource .NET 4.5的滾動文件
有什麼建議嗎?
我一直試圖在.net 4.5中使用ETW。我有一個WCF服務和控制檯應用程序,並且我想使用EventSource來編寫消息,但是,我很努力地理解如何創建我自己的ETW(EventSource和EventListener)來記錄文件(滾動文件)。ETW EventSource .NET 4.5的滾動文件
有什麼建議嗎?
安裝Nuget Package of Microsoft EventSource Library
Install-Package Microsoft.Diagnostics.Tracing.EventSource -Pre
和限定在從EventSource的派生的類的事件。
現在使用Semantic Logging Application Block從Enterprise Library
消費活動。
這裏是一個視頻如何使用它:
引入語義記錄
除了magicandre1981's answer,你應該增加: -
TraceEventSession _session = new TraceEventSession(
"yourSessionName", @"C:\yourLogFile.etl")
{
CircularBufferMB = 100 //100mb rolling log file
};
_session.EnableProvider(TraceEventProviders.GetEventSourceGuidFromName(
"Samples-EventSourceDemos-EventLog"), TraceEventLevel.Always);
這可以與您從日誌記錄(處理中)或交流記錄中處於同一個應用程序中完全分離應用程序(進程外)。