67 Repos
Tools for recording application events and diagnostic information.
Explore 67 awesome GitHub repositories matching part of an awesome list · Logging Libraries. Refine with filters or upvote what's useful.
spdlog ist eine leistungsstarke C++-Logging-Bibliothek, die entwickelt wurde, um Diagnosemeldungen und Anwendungsereignisse aufzuzeichnen. Sie dient als asynchrones Logging-Framework und thread-sichere Bibliothek, die den Zugriff über konkurrierende Threads koordiniert, um die Integrität der Meldungen zu wahren. Das Projekt fungiert als Multi-Target-Log-Router, der einzelne Ereignisse an mehrere Ziele wie Konsolen, Dateien und System-Daemons verteilt. Es enthält einen Log-Rotations-Manager, der Dateilebenszyklen durch einfache, rotierende oder tägliche Rollover-Strategien verwaltet, um eine Erschöpfung des Festplattenspeichers zu verhindern. Die Bibliothek deckt ein breites Spektrum an Funktionen ab, einschließlich benutzerdefinierter Log-Formatierung für benutzerdefinierte Typen und Binärdaten, Erfassung von Quellorten und Verfolgung der Ausführungszeit. Sie bietet auch Observability-Primitive wie die Erfassung von Ereignis-Backtraces mittels Debug-Message-Ring-Buffering und die Möglichkeit, Log-Level über eine externe Laufzeitkonfiguration zu verwalten. Die Bibliothek ist als Header-only-Distribution verfügbar, um separate Kompilierungsschritte zu eliminieren.
Fast and efficient C++ logging library.
Logrus is a structured logging library for Go that produces machine-readable output using key-value pairs and JSON formatting. It serves as a pluggable logging framework providing a thread-safe event logger with configurable mutex locking to manage concurrent writes across multiple goroutines. The project distinguishes itself through a pluggable hook system that routes log entries to external services or custom destinations. It also features a contextual logger capable of attaching persistent metadata and request-scoped fields to entries to improve traceability. The framework covers broad ob
Structured logger for Go applications.
Zap is a high-performance structured logging library designed for production environments. It provides a framework for generating machine-readable logs that minimize memory overhead and CPU usage, allowing for efficient event analysis and system monitoring. The library distinguishes itself through a focus on zero-allocation logging, utilizing buffer pooling to reduce garbage collection pressure during high-frequency operations. It enforces strict data typing through compile-time checks and structured field encoding, which ensures consistent output without the performance cost of reflection-ba
Fast, structured, leveled logging library.
Zerolog is a structured logging library for Go designed for high-performance event capture and observability. It focuses on generating machine-readable JSON output while minimizing memory overhead through zero-allocation buffer encoding and strongly-typed field validation. The library distinguishes itself by providing a chainable, context-aware interface that allows developers to bind trace identifiers and metadata directly to request lifecycles. It supports complex diagnostic workflows by enabling independent logger instances, custom output routing to multiple concurrent destinations, and ev
Zero-allocation JSON logger.
go-spew is a deep inspection library and debugging utility for Go. It functions as a data structure pretty printer that renders complex, nested types into human-readable strings with indentation and type information. The library provides specialized capabilities for visualizing internal program states, including the ability to dump data structures with pointer addresses and map keys. It includes a configuration system to adjust printing behavior, such as limiting recursion depth and setting indentation. The tool uses reflection-based type inspection and recursive tree traversal to handle nes
Deep pretty-printer for debugging data structures.
Lumberjack ist eine Log-Rolling-Bibliothek für Go, die den Lebenszyklus von Log-Dateien durch größenbasierte Rotation und Backup-Bereinigung verwaltet. Sie fungiert als Log-Retention-Manager, um eine Erschöpfung des Festplattenspeichers bei Go-Diensten zu verhindern. Das Projekt optimiert die Log-Speicherung durch Komprimierung rotierter Dateien mittels Gzip-Algorithmus und die Generierung eindeutiger Dateinamen durch zeitgestempelte Backups. Es implementiert eine Aufbewahrungsrichtlinie, die historische Datensätze basierend auf einer maximalen Anzahl an Backups oder einem spezifizierten Dateialter bereinigt. Die Bibliothek implementiert das Standard-Go-Writer-Interface zur Integration mit Logging-Bibliotheken und bietet einen Mechanismus für automatisierte Log-Rotation und Optimierung des Festplattenspeichers.
Simple rolling logger for log file management.
Easyloggingpp ist ein Header-only C++-Logging-Framework und Diagnose-Tool zur Aufzeichnung von Systemereignissen und Diagnosemeldungen. Es fungiert als thread-sichere Logging-Bibliothek, die den Zugriff über mehrere gleichzeitige Ausführungsthreads hinweg synchronisiert, um Datenkorruption während der Ereignisaufzeichnung zu verhindern. Das Framework bietet einen asynchronen Logger, der Meldungen auf einem Hintergrund-Thread verarbeitet, um Latenzzeiten zu minimieren und ein Blockieren der Hauptanwendung zu verhindern. Es fungiert zudem als Log-Dispatcher, der Daten an lokale Dateien, System-Syslog-Einrichtungen oder entfernte Netzwerkziele zur Systemüberwachung weiterleiten kann. Das Toolset deckt ein breites Spektrum an Observability-Funktionen ab, einschließlich Stack-Trace-Erfassung, Crash-Log-Handling und Laufzeitverfolgung für Performance-Profiling. Es bietet Verwaltungs-Utilities für größenbasierte Dateirotation, benutzerdefinierte Log-Layouts und Schweregrad-Filterung sowie Unterstützung für die Serialisierung komplexer Typen und benutzerdefinierter Objekte.
Header-only C++ logging library.
Leveled execution logs for Go
Leveled execution logging for Go applications.
Go package for reading from continously updated files (tail -f)
Package emulating the BSD tail program.
Colored pretty printer for Go language
Colored pretty-printer for debugging Go data structures.
A lightweight C++ logging library
Lightweight and flexible logging for C++ applications.
Seelog is a native Go logging library that provides flexible asynchronous dispatching, filtering, and formatting.
Logging functionality with flexible dispatching and filtering.
🌈 slog.Handler that writes tinted (colorized) logs
Handler for writing tinted logs.
Structured, composable logging for Go
Simple and powerful logging library.
The official Go SDK for Sentry (sentry.io)
SDK for error tracking and performance monitoring.
TUI for filtering and reading logs from various sources.
fmtlog is a performant fmtlib-style logging library with latency in nanoseconds.
High-performance logging library with nanosecond latency.
Fastest structured logging
High-performance structured logging library.
🚨 Design workflows of slog handlers: pipeline, middleware, fanout, routing, failover, load balancing...
Pipeline and fanout handlers for structured logging.