Project Description
LogJam will provide a modern, efficient, and productive framework for trace logging and metrics logging for all projects. LogJam is currently in alpha.

Project Goals
LogJam intends to be a multi-project framework that provides best-of-breed logging APIs and functionality for all project types - library projects, command-line applications, web applications, web services, Silverlight, WPF, and other GUI applications, and phone applications. Features will include:
  • Productive trace message logging API
  • Productive and extensible API for activity logging
  • Productive logging configuration
  • Easy-to-use logging in unit tests
  • Support for logging any record type (not just trace messages or activities)
  • Text and binary log files that can be read and queried via LINQ - in other word, persisted logs are round-trippable
  • In-memory logging (trailing window of log data is held in memory)
  • 2-way interoperability with .NET Framework logging - projects that use System.Diagnostics logging can write to LogJam.Trace; and projects that use LogJam.Trace can write to System.Diagnostics TraceListeners.
  • Best-of-breed efficiency - including minimizing locks and impact on the managed heap
  • Web service
    • Support central management of logging configuration - across many servers and applications
    • Centralized log output collector
    • Browse and query logs via web service
    • Web UI for managing configuration and browsing/querying logs across server farms and applications
  • UI plugins for Web and GUI applications to:
    • Configure logging
    • Browse and query application logs
  • Optional integration with ETW (Event Tracing for Windows)
  • Support .NET 4.0 and later
  • Mono support
  • Added to projects via NuGet

Why another logging framework?
Because none of the available open-source options provide a strong enough design or implementation. Logging is critical to monitoring and understanding application behavior, and it must be nonintrusive, productive, efficient, versatile, and functional.

Last edited Nov 15, 2012 at 5:06 AM by johncrim, version 7