2016-02-29 23 views
1

使用Microsoft.Diagnostics.Tracing EventSource庫(不要誤認爲是System.Diagnostics.Tracing),可以通過添加一個事件查看器來記錄某些消息到事件查看器名爲「頻道」的事件註釋屬性。但是,這會將輸出轉儲到「Windows日誌\應用程序」區域。我如何得到這個日誌到'Applications and Service Logs \ MyApp \ MyFeature'?Microsoft TraceEvent - 如何登錄到事件查看器

示例代碼:

[EventSource(Name = "MyDemoApp")] 
    public sealed class MyDemoEventSource : EventSource 
    { 
     private MyDemoEventSource() { } 
...  
public const EventTask MyDemoTask = (EventTask) 12345; 
... 

[Event(12345, 
    Message = "My Demo Error: {0}", 
    Level = EventLevel.Warning, 
    Channel = EventChannel.Admin, 
    Task = Tasks.MyDemoTask, 
    Keywords = Keywords.Rule, 
    Opcode = Opcodes.Fail)] 
    private void SomethingWentWrong(string ErrorMessage) 
    { 
     WriteEvent(12345, ErrorMessage); 
    } 
+0

如果將'EventSource'更改爲:[[EventSource(Name =「MyApp-MyFeature」)]''會發生什麼? –

+0

不幸的是,它並沒有幫助,它仍然將消息轉儲到相同的位置。 – Dech

+1

這有什麼幫助嗎? (這是三歲,所以可能完全過時)https://blogs.msdn.microsoft.com/dotnet/2013/08/09/announcing-the-eventsource-nuget-package-write-to-the- windows-event-log/ –

回答