Third Party Applications and Libraries
There are a number of third party applications that can be useful together with Supervisor. This list aims to summarize them and make them easier to find.
See README.rst for information on how to contribute to this list.
Dashboards and Tools for Multiple Supervisor Instances
These are tools that can monitor or control a number of Supervisor instances running on different servers.
cesi Web-based dashboard written in Python.
Django-Dashvisor Web-based dashboard written in Python. Requires Django 1.3 or 1.4.
Nodervisor Web-based dashboard written in Node.js.
Supervisord-Monitor Web-based dashboard written in PHP.
SupervisorUI Another Web-based dashboard written in PHP.
supervisorclusterctl Command line tool for controlling multiple Supervisor instances using Ansible.
suponoff Web-based dashboard written in Python 3. Requires Django 1.7 or later.
Supvisors Designed for distributed applications, written in Python 3.6. Includes an extended XML-RPC API, a Web-based dashboard and special features such as staged start and stop.
multivisor Centralized supervisor web-based dashboard. The frontend is based on VueJS. The backend runs a flask web server. It communicates with each supervisor through a specialized supervisor event-listener based on zerorpc.
Dart Web-based dashboard and command line tool written in Python using PostgreSQL with a REST API, event monitoring, and configuration management.
Third Party Plugins and Libraries for Supervisor
These are plugins and libraries that add new functionality to Supervisor. These also includes various event listeners.
superlance
Provides set of common eventlisteners that can be used to monitor
and, for example, restart when it uses too much memory etc.
superhooks
Send Supervisor event notifications to HTTP1.1 webhooks.
mr.rubber
An event listener that makes it possible to scale the number of
processes to the number of cores on the supervisor host.
supervisor-wildcards
Implements start/stop/restart commands with wildcard support for
Supervisor. These commands run in parallel and can be much faster
than the built-in start/stop/restart commands.
mr.laforge
Lets you easily make sure that supervisord and specific
processes controlled by it are running from within shell and
Python scripts. Also adds a kill command to supervisor that
makes it possible to send arbitrary signals to child processes.
supervisor_cache
An extension for Supervisor that provides the ability to cache
arbitrary data directly inside a Supervisor instance as key/value
pairs. Also serves as a reference for how to write Supervisor
extensions.
supervisor_twiddler
An RPC extension for Supervisor that allows Supervisor's
configuration and state to be manipulated in ways that are not
normally possible at runtime.
supervisor-stdout
An event listener that sends process output to supervisord's stdout.
supervisor-serialrestart
Adds a serialrestart command to supervisorctl that restarts
processes one after another rather than all at once.
supervisor-quick
Adds quickstart, quickstop, and quickrestart commands to
supervisorctl that can be faster than the built-in commands. It
works by using the non-blocking mode of the XML-RPC methods and then
polling supervisord. The built-in commands use the blocking mode,
which can be slower due to supervisord implementation details.
supervisor-logging
An event listener that sends process log events to an external
Syslog instance (e.g. Logstash).
supervisor-logstash-notifier
An event listener plugin to stream state events to a Logstash instance.
supervisor_cgroups
An event listener that enables tying Supervisor processes to a cgroup
hierarchy. It is intended to be used as a replacement for
cgrules.conf.
supervisor_checks
Framework to build health checks for Supervisor-based services. Health
check applications are supposed to run as event listeners in Supervisor
environment. On check failure Supervisor will attempt to restart
monitored process.
Superfsmon
Watch a directory and restart programs when files change. It can monitor
a directory for changes, filter the file paths by glob patterns or regular
expressions and restart Supervisor programs individually or by group.
Libraries that integrate Third Party Applications with Supervisor
These are libraries and plugins that makes it easier to use Supervisor with third party applications:
collective.recipe.supervisor
A buildout recipe to install supervisor.
puppet-module-supervisor
Puppet module for configuring the supervisor daemon tool.
puppet-supervisord
Puppet module to manage the supervisord process control system.
ngx_supervisord
An nginx module providing API to communicate with supervisord and
manage (start/stop) backends on-demand.
Supervisord-Nagios-Plugin
A Nagios/Icinga plugin written in Python to monitor individual supervisord processes.
nagios-supervisord-processes
A Nagios/Icinga plugin written in PHP to monitor individual supervisord processes.
supervisord-nagios
A plugin for supervisorctl to allow one to perform nagios-style checks
against supervisord-managed processes.
php-supervisor-event
PHP classes for interacting with Supervisor event notifications.
PHP5 Supervisor wrapper
PHP 5 library to manage Supervisor instances as object.
Symfony2 SupervisorBundle
Provide full integration of Supervisor multiple servers management into Symfony2 project.
sd-supervisord
Server Density plugin for
supervisor.
node-supervisord
Node.js client for Supervisor's XML-RPC interface.
node-supervisord-eventlistener
Node.js implementation of an event listener for Supervisor.
ruby-supervisor
Ruby client library for Supervisor's XML-RPC interface.
Sulphite
Sends supervisord events to Graphite.
supervisord.tmbundle
TextMate bundle for supervisord.conf.
capistrano-supervisord
Capistrano recipe to deploy supervisord based services.
capistrano-supervisor
Another package to control supervisord from Capistrano.
chef-supervisor
Chef cookbook install and configure supervisord.
SupervisorPHP
Complete Supervisor suite in PHP: Client using XML-RPC interface, event listener and configuration builder implementation, console application and monitor UI.
Supervisord-Client
Perl client for the supervisord XML-RPC interface.
supervisord4j
Java client for Supervisor's XML-RPC interface.
Supermann
Supermann monitors processes running under Supervisor and sends metrics
to Riemann.
gulp-supervisor
Run Supervisor as a Gulp task.
Yeebase.Supervisor
Control and monitor Supervisor from a TYPO3 Flow application.
dokku-supervisord
Dokku plugin that injects supervisord to run
applications.
dokku-logging-supervisord
Dokku plugin that injects supervisord to run
applications. It also redirects stdout and stderr from processes to log files
(rather than the Docker default per-container JSON files).
superslacker
Send Supervisor event notifications to Slack.
supervisor-alert
Send event notifications over Telegram or to an
arbitrary command.
supervisor-discord
Send event notifications to Discord via webhooks.