awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
ochinchina avatar

ochinchina/supervisord

0
View on GitHub↗
4,262 stars·618 forks·Go·MIT·29 views

Supervisord

This project is a Go process supervisor designed to start and monitor multiple background programs with automatic restarts and lifecycle management. It functions as a system for coordinating daemon execution, ensuring continuous operation through a central configuration.

The supervisor distinguishes itself with multiple remote administration interfaces, including a process management REST API, an XML-RPC controller, and a built-in web dashboard for monitoring and controlling processes. It features a Prometheus monitoring exporter that serves real-time performance metrics via a dedicated HTTP endpoint and secures these remote interfaces using basic authentication.

The system covers broad capability areas including log management with size-based rotation, automated health checking via TCP and HTTP polling, and service lifecycle orchestration through group-based priority scheduling. It also provides event-driven action triggers, a child process reaper to clean zombie processes, and a command-line interface for manual process control.

The software includes utilities for configuration template generation and can be integrated as a system service using custom environment files.

Features

  • Background Process Managers - Provides a comprehensive system for running applications as daemons with automatic restarts and lifecycle management.
  • Process Supervisors - Starts and monitors multiple background programs with automatic restarts and lifecycle management.
  • Background Daemon Managers - Ensures continuous execution as a background daemon independently of the user session on Unix and Windows.
  • REST Management APIs - Implements a REST management API for controlling daemon lifecycles and retrieving system status programmatically.
  • Health Checks - Implements runtime health monitoring via TCP and HTTP probes to ensure background services remain operational.
  • Management API Exposures - Provides a network interface to remotely administer and control background processes via HTTP requests.
  • Process Readiness Probes - Verifies process readiness by scanning for specific strings in output streams or executing validation scripts.
  • Polling-Based Health Monitors - Periodically validates process readiness by monitoring TCP connections, HTTP response codes, or specific output strings.
  • Remote Administration Interfaces - Offers remote administration interfaces including a REST API and XML-RPC controller for managing background services.
  • Remote Process Management - Allows the use of network requests over sockets to manage and monitor active processes from external machines.
  • Remote Server Management Tools - Exposes a management server with authentication to control system operations from a remote location.
  • Process State Monitors - Tracks and reports the operational status and process IDs of managed programs to ensure they run as expected.
  • Process Stream Redirection - Captures standard output and error streams from child processes into files with configurable rotation and size limits.
  • CLI Process Controllers - Provides a command-line utility to trigger status checks and reload the runtime state of supervised processes.
  • Process Runtime Environment Configurations - Assigns environment variables and sets working directories to define the full execution context for spawned processes.
  • Process Event Triggers - Triggers specific actions based on process state changes, communication events, and timed intervals.
  • Environment Variable Configurations - Imports key-value pairs from external environment files to inject runtime settings into managed processes.
  • Startup and Shutdown Sequencing - Coordinates the specific order of process startup and shutdown using priority-based group scheduling.
  • File-Change-Triggered Restarts - Restarts processes automatically when executable binaries or monitored files are updated.
  • REST API Interfaces - Implements server-side RESTful endpoints for starting, stopping, and monitoring the status of running programs.
  • XML-RPC Servers - Hosts an XML-RPC server to process remote procedure calls for controlling processes via TCP or Unix sockets.
  • Zombie Process Reclamation - Automatically reclaims system resources from terminated child processes to prevent zombie processes and resource exhaustion.
  • Process Grouping and Prioritization - Organizes processes into logical groups with priority settings to coordinate the sequence of startup and shutdown.
  • Process Group Signaling - Organizes multiple programs into groups for collective starting, stopping, and signaling of related processes.
  • Process Lifecycle State Machines - Uses a state machine to trigger automated actions based on process operational status changes and system ticks.
  • Service State Controls - Provides administrative endpoints to manage the supervisor's operational state, including configuration reloading and service shutdown.
  • Web-Based Management Interfaces - Ships a built-in web interface to start, stop, and check the status of supervised programs.
  • Execution Log Redirection - Routes standard output and error streams from supervised processes to files, local syslog, or remote syslog servers.
  • Health Metrics Exposure - Exposes internal system health and process performance metrics for external monitoring tools via HTTP.
  • Log Rotation Utilities - Includes utilities for managing disk space by automatically rotating and archiving process log files based on size.
  • Prometheus-Formatted HTTP Endpoints - Serves a Prometheus-formatted HTTP endpoint for external scraping of process and system metrics.
  • Process Log Captures - Captures process stdout and stderr into files with configurable rotation and backup counts.
  • Process State Event Listeners - Provides programs that trigger automated actions based on changes in the state of managed processes.
  • Prometheus Metrics Exporters - Exposes real-time system and process metrics in Prometheus format via a dedicated HTTP endpoint.
  • Prometheus System Metrics Exporters - Exports CPU, memory, and process metrics in Prometheus format through a dedicated REST endpoint.
  • Monitoring and Alerting - Process manager implementation.

Star history

Star history chart for ochinchina/supervisordStar history chart for ochinchina/supervisord

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does ochinchina/supervisord do?

This project is a Go process supervisor designed to start and monitor multiple background programs with automatic restarts and lifecycle management. It functions as a system for coordinating daemon execution, ensuring continuous operation through a central configuration.

What are the main features of ochinchina/supervisord?

The main features of ochinchina/supervisord are: Background Process Managers, Process Supervisors, Background Daemon Managers, REST Management APIs, Health Checks, Management API Exposures, Process Readiness Probes, Polling-Based Health Monitors.

Which projects share features with ochinchina/supervisord?

Projects with overlapping indexed features include: lollipopkit/flutter_server_box — Flutter Server Management App is a mobile application designed for monitoring and controlling remote servers through a… open-falcon/falcon-plus — Falcon Plus is an infrastructure monitoring platform designed to aggregate performance metrics from distributed agents… xabaril/aspnetcore.diagnostics.healthchecks — This is a health monitoring tool for ASP.NET Core applications designed to verify the availability of infrastructure… openstatushq/openstatus — OpenStatus is a status page platform and uptime monitoring service. It provides a centralized infrastructure… zhenorzz/goploy — Goploy is a centralized infrastructure management and deployment platform designed to automate software releases and… dodyg/practical-aspnetcore — This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of…

Projects sharing features with Supervisord

These projects share indexed features with Supervisord. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • lollipopkit/flutter_server_boxlollipopkit avatar

    lollipopkit/flutter_server_box

    7,539View on GitHub↗

    Flutter Server Management App is a mobile application designed for monitoring and controlling remote servers through a graphical interface. It serves as a central hub for remote server administration, providing a visual way to manage Linux, Unix, and Windows systems. The application distinguishes itself by integrating mobile hardware features, such as biometric authentication and native push notifications, to secure and alert users about system contexts. It features a dedicated Docker container manager for controlling the lifecycle and status of containers and a server health monitor for trac

    Dartandroiddartflutter
    View on GitHub↗7,539
  • open-falcon/falcon-plusopen-falcon avatar

    open-falcon/falcon-plus

    7,246View on GitHub↗

    Falcon Plus is an infrastructure monitoring platform designed to aggregate performance metrics from distributed agents and manage infrastructure health alerts. It functions as a containerized service orchestrator and a distributed metrics aggregator, providing a centralized system for routing monitoring data and exposing health statistics via a REST observability interface. The platform features a dedicated system alert manager that evaluates incoming performance data against predefined thresholds to trigger operational alarms. It employs a data pipeline to consolidate real-time metrics from

    Go
    View on GitHub↗7,246
  • xabaril/aspnetcore.diagnostics.healthchecksxabaril avatar

    xabaril/AspNetCore.Diagnostics.HealthChecks

    4,368View on GitHub↗

    This is a health monitoring tool for ASP.NET Core applications designed to verify the availability of infrastructure and external dependencies. It provides a system for tracking the status of services and dependencies within an application to maintain distributed system observability. The project distinguishes itself through cluster service discovery, which identifies active health check endpoints by querying cluster APIs, such as those in Kubernetes. It also includes a health status dashboard for visualizing stability trends and a mechanism to connect real-time health status to deployment pi

    C#
    View on GitHub↗4,368
  • openstatushq/openstatusopenstatusHQ avatar

    openstatusHQ/openstatus

    8,756View on GitHub↗

    OpenStatus is a status page platform and uptime monitoring service. It provides a centralized infrastructure monitoring dashboard and public status pages to communicate system availability, performance metrics, and incident reports to external stakeholders. The system utilizes a multi-region probe network to execute health checks from various cloud regions, detecting localized outages and tracking API latency. It functions as a configuration as code tool, allowing monitoring targets and page structures to be defined via version-controlled files. The platform includes an incident notification

    TypeScriptbundrizzle-ormmonitoring
    View on GitHub↗8,756
Compare all 30 related projects→