1 Repo
The process of capturing and transforming logs from plugin processes into formats usable by the host.
Distinct from Logging Destination Plugins: Focuses on the transport and parsing of logs from a process to a host, whereas Logging Destination Plugins define the output interfaces.
Explore 1 awesome GitHub repository matching software engineering & architecture · Log Routing. Refine with filters or upvote what's useful.
go-plugin ist ein Framework zur Implementierung von Plugin-Architekturen, bei denen Erweiterungen als separate Prozesse ausgeführt werden und über ein Go-RPC-Plugin-System kommunizieren. Es fungiert als Inter-Process-Communication-Bibliothek und Lebenszyklus-Manager, der es Host-Anwendungen ermöglicht, externe binäre Plugins zu entdecken, zu starten und zu überwachen. Das Framework ermöglicht sprachübergreifende Plugin-Systeme, wodurch Plugins, die in verschiedenen Sprachen geschrieben wurden, über standardisierte RPC-Protokolle in einen Host integriert werden können. Es verfügt über eine bidirektionale RPC-Brücke, die es sowohl dem Host als auch dem Plugin ermöglicht, Schnittstellenimplementierungen für komplexen Datenaustausch und Callbacks auszutauschen. Das System bietet Prozessisolierung durch die Ausführung von Plugins als unabhängige Subprozesse, wodurch sichergestellt wird, dass Plugin-Abstürze die Host-Anwendung nicht beenden. Es deckt Sicherheit durch gegenseitige TLS-Authentifizierung und Integritätsprüfung ab sowie Lebenszyklus-Orchestrierung, einschließlich zustandsbehafteter Prozess-Wiederanbindung, um die Konnektivität während Host-Upgrades aufrechtzuerhalten. Zusätzliche Funktionen umfassen binäre Entdeckung, Protokoll-Versionierung und die Synchronisation von Plugin-Logs und Output-Streams zurück zum Host.
Captures structured log entries from plugin processes and parses them for the host application.