Windows Event Trace Log Sink

Windows Event Trace Log Sink

All MSS events are raised to the Windows event trace log sink (Trace sink), the Kernel-mode logging infrastructure for the Windows operating system. The raised events can be captured to a file, or routed to a debugging console. First, logging must be enabled.

The Trace sink is designed to accommodate high-frequency eventing; hundreds of MSS events per second can be generated to this sink. As a result, event trace log files (.etl) can quickly grow very large.

Note .Etl files are by nature highly compressible. A third-party compression tool can reduce their size greatly, and should be used to compress log files for archival purposes, as well as to make them smaller for copying or moving.

Use the MSSLogConfig tool to customize the events being generated to the Trace sink.

Creating a Trace Reader Class

The Event Trace Sink provided with the Microsoft Enterprise Instrumentation Framework (EIF) produces event trace log (.etl) files that are undesirably large for the Microsoft Speech Server (MSS) environment. To address this issue, the MSS team created a new Event Trace Sink that achieves a 50 to 60 percent reduction in .etl file size.

As a consequence, however, tools that are written using the EIF TraceLogReader class will not be able to read MSS event logs.

If you are building tools that read MSS events, you can use the updated MSS TraceLogReader class (in the Microsoft.SpeechServer.Log namespace) to read .etl files generated both by the EIF trace sink, and by the new MSS trace sink.

To migrate an EIF-based trace reader application to read MSS events
  1. Add a reference to MssTrace.dll to your project or build script.

    MssTrace.dll can be found in the %CommonProgramFiles%\MssTrace directory after installing MSS.

  2. In your source files, replace any C# "using" statements that refer to the following EIF namespaces:

    using Microsoft.EnterpriseInstrumentation.Readers;
    

using Microsoft.EnterpriseInstrumentation.Serialization;

with the following statements:

<pre IsFakePre="true" xmlns="https://www.w3.org/1999/xhtml">using Microsoft.SpeechServer.Serialization;

using EventEntryFormatProvider = Microsoft.EnterpriseInstrumentation.Serialization. EventEntryFormatProvider;

  1. Rebuild and test your tool.

    Note  MssTrace.dll may not be redistributed. Note that it will be installed in the global assembly cache on machines where either MSS or the Microsoft Speech Application SDK (SASDK) are installed.

See Also

Event Filters | SDK Log Analysis Tools | Filtering Logged Events