10 repository-uri
Interfaces that allow external handlers to be plugged into a logging pipeline to redirect output.
Distinct from Hook-Based Plugin Systems: Distinct from general hook-based systems: specifically defines the plugin interface for log output destinations.
Explore 10 awesome GitHub repositories matching software engineering & architecture · Logging Destination Plugins. Refine with filters or upvote what's useful.
Timber is an extensible logging framework and wrapper for Android applications. It provides an interface that extends the standard Android logging class to enable customizable output destinations and routing logic. The system uses a tree-based dispatch model and a plugin system to direct log messages to multiple external handlers. This allows for custom log routing to external services or files based on the current environment or specific criteria. The project includes tools for monitoring and observability, specifically a performance validator that analyzes logging calls to detect inefficie
Implements an interface-based system allowing custom log destinations to be plugged into the logging pipeline.
Janus is a WebRTC media gateway that routes real-time audio, video, and data between web browsers and server-side application logic. It functions as a central media relay that manages session negotiation and encryption for multiple browser endpoints. The project utilizes a modular plugin architecture that decouples the core server from specific media logic, allowing developers to implement custom modules for media processing, event handling, and transport protocols. This design enables the server to act as a protocol translation bridge, converting WebRTC streams into legacy formats such as SI
Implements a JSON-based request and event exchange mechanism between clients and server-side plugins.
Consola is a diagnostic logging utility and log output manager that provides a unified interface for Node.js and web browser environments. It functions as a scoped logging framework and a tool for capturing user text, confirmations, and selections through interactive console prompts. The project distinguishes itself through a system for creating specialized logger instances with inherited defaults and unique tags for contextual tracking. It also features a pluggable reporter interface that allows for the redirection of standard output to custom logging destinations and external reporters. Th
Provides a pluggable reporter interface to route log data to custom external destinations.
go-plugin is a framework for implementing plugin architectures where extensions run as separate processes and communicate via a Go RPC plugin system. It functions as an inter-process communication library and lifecycle manager that allows host applications to discover, launch, and monitor external binary plugins. The framework enables cross-language plugin systems, allowing plugins written in different languages to integrate with a host through standardized RPC protocols. It features a bidirectional RPC bridge that allows both the host and the plugin to exchange interface implementations for
Facilitates the exchange of message sequences to handle large datasets or continuous updates.
Zed is a terminal-based code editor built in Rust that provides a full-featured editing experience with familiar keybindings, mouse support, and multiple cursors. It runs entirely in the terminal while offering capabilities typically found in graphical editors, including split panes, a command palette, and integrated language server protocol support for real-time diagnostics, completions, go-to-definition, and code actions across multiple languages. The editor distinguishes itself through a plugin system that runs sandboxed TypeScript plugins in a QuickJS runtime, with an asynchronous bridge
Zed records error, warning, or info messages from a plugin to the editor's log file for debugging and monitoring.
Vibora este un framework web Python asincron și un server HTTP integrat, conceput pentru construirea de aplicații web de înaltă performanță. Utilizează o buclă de evenimente asincronă și corutine pentru a procesa cererile de rețea și a servi răspunsuri fără a necesita wrappere de server externe. Proiectul include un validator de schemă asincron de înaltă performanță pentru integritatea cererilor, un motor de template-uri non-blocant cu suport pentru hot-reloading și un server de comunicație WebSocket pentru schimbul de date bidirecțional în timp real. Framework-ul acoperă o gamă largă de capabilități, inclusiv gestionarea modulară a rutelor prin blueprints, injecția de dependențe pentru componentele aplicației și parsarea HTTP zero-copy. De asemenea, oferă instrumente pentru gestionarea sesiunilor utilizatorilor, randarea HTML asincronă și un client HTTP non-blocant cu connection pooling. O interfață în linie de comandă (CLI) este disponibilă pentru bootstrapping-ul proiectului, pentru a genera structuri de directoare standardizate și fișiere de configurare inițiale.
Allows the definition of custom handlers to process system log messages using standard logging levels.
EasyLogger este o bibliotecă de logging C/C++ ușoară și un framework asincron conceput pentru sisteme embedded, dispozitive IoT și wearables. Acesta funcționează ca un logger eficient din punct de vedere al resurselor și un manager de memorie flash, oferind instrumente pentru debugging de nivel scăzut și înregistrarea evenimentelor de sistem cu cerințe minime de ROM și RAM. Proiectul se distinge printr-un model de logging asincron care stochează mesajele într-un thread separat, prevenind blocarea execuției aplicației în timp real. Include un manager de memorie flash specializat care utilizează buffering circular pentru a persista log-urile în stocare non-volatilă, asigurând păstrarea datelor critice la repornirea dispozitivului. Biblioteca acoperă o gamă largă de capabilități de observabilitate, inclusiv aserțiuni de sistem pentru validarea stării, filtrarea severității la compilare și runtime, și generarea de dump-uri binare hexazecimale brute. Suportă îmbogățirea metadatelor cu timestamp-uri și identificatori de thread, alături de o interfață portabilă pentru direcționarea log-urilor către destinații personalizate, cum ar fi porturi seriale sau fișiere. Sistemul asigură integritatea datelor prin sincronizarea scrierii și oferă mecanisme pentru golirea manuală a buffer-ului și recuperarea log-urilor stocate.
Provides a portable interface for plugging in custom output destinations such as serial ports or files.
Yabridge is a compatibility bridge that allows Windows audio plugins to run within Linux digital audio workstations. It utilizes a Wine-based wrapper to translate audio processing and plugin calls from Windows plugins to Linux hosts, supporting both VST2 and VST3 standards. The system manages the execution of both 32-bit and 64-bit Windows plugins on Linux. It includes specialized mechanisms to handle window scaling, input focus, and the transfer of data through cross-environment drag-and-drop between native Linux applications and Windows plugins. The project provides tools for environment i
Captures debug messages and system output from plugins to files for diagnostic purposes.
MadelineProto is an asynchronous PHP library that provides a programmatic interface for interacting with the Telegram API using the MTProto protocol, the same protocol used by official Telegram clients. It functions as both a Telegram bot SDK and a userbot automation library, enabling PHP applications to connect to Telegram as either a bot account or a regular user account, sending and receiving messages, media, and other data directly without relying on the Bot API intermediary. The library is built on an event-driven architecture with Amp v3 fiber-based concurrency, allowing for non-blockin
Sends log entries at configurable verbosity levels to a file or other destination defined in settings.
open62541 is an open-source implementation of the OPC Unified Architecture standard, providing a complete stack for industrial automation and data exchange. It functions as both an OPC UA server and client, enabling the creation of an object-oriented address space to model physical industrial assets and their relationships. The project is designed for versatility across diverse hardware, offering a C99 library that can be deployed to both cloud servers and resource-constrained embedded environments. It distinguishes itself through a pluggable network layer and interface-based security backend
Provides a plugin interface to redirect internal system logs to custom output destinations.