Semantic Logging Application Block (SLAB) 1.1

Release Notes

Updated 3/27/2014

Welcome to the official release of SLAB 1.1!
This document contains a brief summary of the block, including late-breaking information that is not included in the main documentation. Additional information and bug fixes delivered after release are available on the Semantic Logging Application Block Community site and on the SLAB MSDN site.

Where to get it?

Via NuGet – use the NuGet Package Manager in Visual Studio and search online for the “slab” packages. Pick the official Microsoft packages.

What’s New in this Release?

This minor release of the Semantic Logging Application Block contains several new features and updates that will make developers more productive. These include:
  • Support for Activity Ids (
    • Support for activity IDs for EventSources is available in .NET 4.5.1. This version of SLAB adds support for capturing and storing in all supported sinks the new ActivityId and RelatedActivityId properties from events published by EventSource classes. See this page page for more details on activity tracing and sampling.
  • Support for keywords over 32 bits (
  • Making formerly internal BufferedEventPublisher class public to make it easier to write custom SLAB sinks
  • Added EnableEvents and DisableEvents extension methods to the EventListener class to configure event listeners using an event source name rather than an event source instance. This allows capturing events from sources which are not publicly accessible, such as those generated by the Task Parallel Library (TPL) event provider to indicate activity ID transfers when tasks are used.
  • Added a set of functional acceptance tests (BVTs).
  • Added the Elasticsearch sink.
  • Refactoring of declarative configuration support: the interfaces for defining custom configuration elements for custom sinks are now part of the main SLAB assembly. Packages providing custom sinks and formatter configuration elements now don't need to reference the Microsoft.Practices.EnterpriseLibrary.SemanticLogging.Etw assembly (which isn't available as a NuGet package).
  • Out-of-proc service now available as a NuGet package: EnterpriseLibrary.SemanticLogging.Service.


  • Development team: Christopher Bennage, RoAnn Corbisier, Nelly Delgado, Carlos Farre, Grigori Melnik, Fernando Simonazzi, Mani Subramanian
  • Subject matter experts: Vance Morrison, Cosmin Radu
  • Community contributors:

Providing feedback and contributing

We would appreciate feedback on any issues found, or any other general comments on this release.
To report a bug, use online Issue Tracker. Other feedback or questions can be posted on the Codeplex forum. In addition, we are encouraging and accepting community contributions. For more information, please see Contribution Guidelines.
We look forward to your pull requests!


Community support is provided via Codeplex forum. Customers can obtain support through Microsoft Premier Support Services for a fee, but the code is considered user-written by Microsoft support engineers.

Known issues

1. Performance considerations when using the ActivityId feature:
We favor and recommend using SLAB in process when consuming TPL events for end-to-end tracing. See Activity tracing and sampling for details.
2. Security considerations using the SemanticLogging.Elasticsearch sink:

2.1 Currently, there is no authentication for the Elasticsearch store. A basic authentication plugin is available, but it is experimental.
It only should be used with SSL. Our solution does not integrate with any authentication scheme.
There is no SSL support in Elasticsearch unless the JETTY Plug In is used (see and
Thus, be aware of the security vulnerabilities when exposing business or other sensitive metrics via CURL, SENSE, and so on, or when the customer data is exposed while in transit.
Another option is to deploy Elasticsearch behind a secure layer MVC, web api. See this page for more info.
2.2 The System.Net.Http and System.Net.Http.Headers namespace might not be available in future versions of Windows for use by Windows Store apps. Starting with Windows 8.1 and Windows Server 2012 R2, use Windows.Web.Http.HttpClient in the Windows.Web.Http namespace and the related Windows.Web.Http.Headers and Windows.Web.Http.Filters namespaces instead for Windows Store apps.
3. Microsoft Azure Table Sink

The Azure Table Sink now has been updated to use version 3 of the Azure Storage API. Make sure to update your Azure Tools and the Azure Storage emulator to the latest version (2.3, released Apr 3, 2014).

Last edited Apr 5, 2014 at 12:03 AM by gmelnik, version 21