# qos-ch/logback

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/qos-ch-logback).**

3,211 stars · 1,352 forks · Java · other

## Links

- GitHub: https://github.com/qos-ch/logback
- Homepage: http://logback.qos.ch
- awesome-repositories: https://awesome-repositories.com/repository/qos-ch-logback.md

## Description

Logback is a Java logging framework used to record system events and diagnostic messages through a programmable API. It serves as a concrete implementation of the Simple Logging Facade for Java (SLF4J) and provides a structured logging engine for outputting events in machine-readable formats like JSON.

The system distinguishes itself through an asynchronous log processor that utilizes circular queues and background workers to reduce performance overhead. It also features a log file rotation manager for size-based or time-based rollover with automatic compression, and the ability to update logging levels and settings at runtime without restarting the application.

Broad capabilities include distributed request tracing via contextual metadata attachment, comprehensive HTTP traffic recording, and event filtering based on runtime attributes. The framework also supports secure log transmission over encrypted connections and the dispatching of critical alerts via SMTP email.

Configuration is managed through a variety of sources, including XML, Groovy scripts, and file-based settings.

## Tags

### System Administration & Monitoring

- [System Logging and Debugging](https://awesome-repositories.com/f/system-administration-monitoring/system-logging-and-debugging.md) — Provides a high-performance Java framework for recording system events and diagnostic messages for debugging and auditing.
- [Application Event Recording](https://awesome-repositories.com/f/system-administration-monitoring/application-event-recording.md) — Captures system events and diagnostic messages through a programmable API to facilitate debugging and auditing. ([source](https://logback.qos.ch/index.html))
- [Asynchronous Logging](https://awesome-repositories.com/f/system-administration-monitoring/asynchronous-logging.md) — Utilizes background workers and circular queues for non-blocking log transmission to reduce application performance overhead.
- [Log Event Filters](https://awesome-repositories.com/f/system-administration-monitoring/audit-log-filters/log-event-filters.md) — Provides mechanisms to include or exclude log events based on runtime property values or specific conditions. ([source](https://logback.qos.ch/manual/index.html))
- [Application Log Routing](https://awesome-repositories.com/f/system-administration-monitoring/container-observability-tools/log-routing/application-log-redirection/application-log-routing.md) — Directs application events to multiple outputs including consoles, files, and email via configurable appenders. ([source](https://logback.qos.ch/demo.html))
- [Dynamic Configuration Reloading](https://awesome-repositories.com/f/system-administration-monitoring/log-configuration/dynamic-configuration-reloading.md) — Allows updating log levels and settings at runtime via file scanning or scripts without restarting the application.
- [Log Rotation Utilities](https://awesome-repositories.com/f/system-administration-monitoring/log-rotation-utilities.md) — Manages disk space by automatically rotating active log files and compressing archives based on size or time.
- [Structured Message Templates](https://awesome-repositories.com/f/system-administration-monitoring/structured-message-templates.md) — Transforms raw log events into formatted strings using customizable templates for structured or plain text output.
- [Access Logs](https://awesome-repositories.com/f/system-administration-monitoring/access-logs.md) — Records standard traffic metadata such as status codes and latency by integrating with web containers. ([source](https://logback.qos.ch/reasonsToSwitch.html))
- [Attribute-Based Telemetry Routing](https://awesome-repositories.com/f/system-administration-monitoring/attribute-based-telemetry-routing.md) — Routes log events to different destination files based on runtime attributes such as user session IDs. ([source](https://logback.qos.ch/reasonsToSwitch.html))
- [Diagnostic Context Propagators](https://awesome-repositories.com/f/system-administration-monitoring/diagnostic-logging/diagnostic-context-propagators.md) — Implements mechanisms for maintaining diagnostic context across asynchronous execution threads, including support for virtual threads. ([source](https://logback.qos.ch/news.html))
- [HTTP Access Logging](https://awesome-repositories.com/f/system-administration-monitoring/http-access-logging.md) — Log4j records detailed information about incoming web requests including methods, requested pages, and status codes. ([source](https://logback.qos.ch/demo.html))
- [Compressed Log Rotations](https://awesome-repositories.com/f/system-administration-monitoring/log-rotation-utilities/compressed-log-rotations.md) — Reduces storage requirements by compressing archived log files using GZ or XZ formats during rotation. ([source](https://logback.qos.ch/news.html))
- [Request Logging](https://awesome-repositories.com/f/system-administration-monitoring/request-logging.md) — Duplicates input and output streams of a web request to record the entire payload for debugging. ([source](https://logback.qos.ch/access.html))
- [Request Tracing](https://awesome-repositories.com/f/system-administration-monitoring/request-tracing.md) — Attaches diagnostic context and metadata to execution threads to track requests across complex distributed application flows.
- [Structured Logging](https://awesome-repositories.com/f/system-administration-monitoring/structured-logging.md) — Converts application events into machine-readable formats like JSON for automated analysis in log aggregators.
- [Structured Logging Frameworks](https://awesome-repositories.com/f/system-administration-monitoring/structured-logging-frameworks.md) — Provides an engine for outputting log events in JSON and other machine-readable formats for structured analysis.

### DevOps & Infrastructure

- [File-Based Configuration](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/file-based-configuration.md) — Loads system logging settings from files on the classpath or specific directories to control application behavior. ([source](https://logback.qos.ch/faq.html))
- [Dynamic Configuration Reloading](https://awesome-repositories.com/f/devops-infrastructure/application-server-configurations/dynamic-configuration-reloading.md) — Allows updating logging levels and settings at runtime by monitoring configuration file changes without restarting.

### Programming Languages & Runtimes

- [Java Logging Frameworks](https://awesome-repositories.com/f/programming-languages-runtimes/java-logging-frameworks.md) — Provides a comprehensive logging library for Java applications via a programmable API.
- [Thread-Local Contexts](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/concurrency/thread-local-contexts.md) — Stores contextual metadata in thread-local storage to track unique request IDs across execution flows.

### Software Engineering & Architecture

- [Appender-Based Routing](https://awesome-repositories.com/f/software-engineering-architecture/appender-based-routing.md) — Provides a pluggable appender architecture to route log events to consoles, files, and network sockets.
- [JSON Formats](https://awesome-repositories.com/f/software-engineering-architecture/custom-log-formatting/json-formats.md) — Outputs log events in newline delimited JSON format to enable structured log analysis. ([source](https://logback.qos.ch/news.html))
- [Asynchronous Processing](https://awesome-repositories.com/f/software-engineering-architecture/event-logging/asynchronous-processing.md) — Buffering log events in background queues to prevent logging operations from slowing down the main application performance. ([source](https://logback.qos.ch/performance.html))
- [Log Layout Customization](https://awesome-repositories.com/f/software-engineering-architecture/log-layout-customization.md) — Transforms log events into specific layouts and customizable text patterns for better human readability. ([source](https://logback.qos.ch/demo.html))
- [SLF4J Implementations](https://awesome-repositories.com/f/software-engineering-architecture/slf4j-implementations.md) — Serves as a concrete implementation of the SLF4J facade, handling the actual routing and formatting of log events.

### Development Tools & Productivity

- [Log](https://awesome-repositories.com/f/development-tools-productivity/archive-management/log.md) — Provides automated management and deletion of old log archives to prevent disk space exhaustion. ([source](https://logback.qos.ch/reasonsToSwitch.html))

### Networking & Communication

- [Circular Buffering](https://awesome-repositories.com/f/networking-communication/communication-protocols-architectures/inter-process-communication/inter-process-communication-frameworks/asynchronous-task-queues/circular-buffering.md) — Implements an asynchronous log processor using circular queues to minimize performance overhead.
- [HTTP Traffic Logging](https://awesome-repositories.com/f/networking-communication/http-clients/http-servers/http-traffic-logging.md) — Records incoming web requests and server responses by connecting with web containers for traffic analysis. ([source](https://logback.qos.ch/index.html))
- [Contextual Metadata Propagation](https://awesome-repositories.com/f/networking-communication/tracing-context-propagation/contextual-metadata-propagation.md) — Associates diagnostic information with execution threads to track requests across complex application flows. ([source](https://logback.qos.ch/manual/index.html))

### Part of an Awesome List

- [Logging Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/logging-frameworks.md) — Next-generation logging framework for Java.
