FYI, another p&p project - Composite Services - has implemented an ETW trace listener. They've posted their first drop
here. Take a look. Please let us know if it addresses your needs.
I'm surprised nobody referenced the fist part of my question: using the built-in ETW-enabled
EventProviderTraceListener class. After some confusion on my part, I was able to wire this listener into EntLib as a generic "System Diagnostics Trace Listener".
Perhaps my tests were flawed, but I only saw about 30% performance increase using this built-in ETW listener compared to the simple rolling flat-file listener. I expected a much greater leap in events/second throughput using ETW (on the
order of 500%+). :(
Perhaps I'll give the Composite Services listener a try, but I am curious why they implemented their own if the built-in implemenation (type
EventProviderTraceListener) has existed since the introduction of .NET 3.5.