plugins.rst 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. Third Party Applications and Libraries
  2. ======================================
  3. There are a number of third party applications that can be useful together
  4. with Supervisor. This list aims to summarize them and make them easier
  5. to find.
  6. See README.rst for information on how to contribute to this list.
  7. Obviously, you can always also send an e-mail to the Supervisor mailing
  8. list to inform about missing plugins or libraries for/using Supervisor.
  9. Dashboards and Tools for Multiple Supervisor Instances
  10. ------------------------------------------------------
  11. These are tools that can monitor or control a number of Supervisor
  12. instances running on different servers.
  13. `cesi <https://github.com/Gamegos/cesi>`_
  14. Web-based dashboard written in Python.
  15. `Django-Dashvisor <https://github.com/aleszoulek/django-dashvisor>`_
  16. Web-based dashboard written in Python. Requires Django 1.3 or 1.4.
  17. `Nodervisor <https://github.com/TAKEALOT/nodervisor>`_
  18. Web-based dashboard written in Node.js.
  19. `Supervisord-Monitor <https://github.com/mlazarov/supervisord-monitor>`_
  20. Web-based dashboard written in PHP.
  21. `SupervisorUI <https://github.com/luxbet/supervisorui>`_
  22. Another Web-based dashboard written in PHP.
  23. `supervisorclusterctl <https://github.com/RobWin/supervisorclusterctl>`_
  24. Command line tool for controlling multiple Supervisor instances
  25. using Ansible.
  26. `suponoff <https://github.com/GambitResearch/suponoff>`_
  27. Web-based dashboard written in Python 3. Requires Django 1.7 or later.
  28. Third Party Plugins and Libraries for Supervisor
  29. ------------------------------------------------
  30. These are plugins and libraries that add new functionality to Supervisor.
  31. These also includes various event listeners.
  32. `superlance <http://pypi.python.org/pypi/superlance>`_
  33. Provides set of common eventlisteners that can be used to monitor
  34. and, for example, restart when it uses too much memory etc.
  35. `mr.rubber <https://github.com/collective/mr.rubber>`_
  36. An event listener that makes it possible to scale the number of
  37. processes to the number of cores on the supervisor host.
  38. `supervisor-wildcards <https://github.com/aleszoulek/supervisor-wildcards>`_
  39. Implemenents start/stop/restart commands with wildcard support for
  40. Supervisor. These commands run in parallel and can be much faster
  41. than the built-in start/stop/restart commands.
  42. `mr.laforge <https://github.com/fschulze/mr.laforge>`_
  43. Lets you easily make sure that ``supervisord`` and specific
  44. processes controlled by it are running from within shell and
  45. Python scripts. Also adds a ``kill`` command to supervisor that
  46. makes it possible to send arbitrary signals to child processes.
  47. `supervisor_cache <https://github.com/mnaberez/supervisor_cache>`_
  48. An extension for Supervisor that provides the ability to cache
  49. arbitrary data directly inside a Supervisor instance as key/value
  50. pairs. Also serves as a reference for how to write Supervisor
  51. extensions.
  52. `supervisor_twiddler <https://github.com/mnaberez/supervisor_twiddler>`_
  53. An RPC extension for Supervisor that allows Supervisor's
  54. configuration and state to be manipulated in ways that are not
  55. normally possible at runtime.
  56. `supervisor-stdout <https://github.com/coderanger/supervisor-stdout>`_
  57. An event listener that sends process output to supervisord's stdout.
  58. `supervisor-serialrestart <https://github.com/native2k/supervisor-serialrestart>`_
  59. Adds a ``serialrestart`` command to ``supervisorctl`` that restarts
  60. processes one after another rather than all at once.
  61. `supervisor-quick <http://lxyu.github.io/supervisor-quick/>`_
  62. Adds ``quickstart``, ``quickstop``, and ``quickrestart`` commands to
  63. ``supervisorctl`` that can be faster than the built-in commands. It
  64. works by using the non-blocking mode of the XML-RPC methods and then
  65. polling ``supervisord``. The built-in commands use the blocking mode,
  66. which can be slower due to ``supervisord`` implementation details.
  67. `supervisor-logging <https://github.com/infoxchange/supervisor-logging>`_
  68. An event listener that sends process log events to an external
  69. Syslog instance (e.g. Logstash).
  70. `supervisor_cgroups <https://github.com/htch/supervisor_cgroups>`_
  71. An event listener that enables tying Supervisor processes to a cgroup
  72. hierarchy. It is intended to be used as a replacement for
  73. `cgrules.conf <http://linux.die.net/man/5/cgrules.conf>`_.
  74. Libraries that integrate Third Party Applications with Supervisor
  75. -----------------------------------------------------------------
  76. These are libraries and plugins that makes it easier to use Supervisor
  77. with third party applications:
  78. `django-supervisor <http://pypi.python.org/pypi/django-supervisor/>`_
  79. Easy integration between djangocl and supervisord.
  80. `collective.recipe.supervisor <http://pypi.python.org/pypi/collective.recipe.supervisor>`_
  81. A buildout recipe to install supervisor.
  82. `puppet-module-supervisor <https://github.com/plathrop/puppet-module-supervisor>`_
  83. Puppet module for configuring the supervisor daemon tool.
  84. `puppet-supervisord <https://github.com/ajcrowe/puppet-supervisord>`_
  85. Puppet module to manage the supervisord process control system.
  86. `ngx_supervisord <https://github.com/FRiCKLE/ngx_supervisord>`_
  87. An nginx module providing API to communicate with supervisord and
  88. manage (start/stop) backends on-demand.
  89. `Supervisord-Nagios-Plugin <https://github.com/Level-Up/Supervisord-Nagios-Plugin>`_
  90. A Nagios/Icinga plugin written in Python to monitor individual supervisord processes.
  91. `nagios-supervisord-processes <https://github.com/blablacar/nagios-supervisord-processes>`_
  92. A Nagios/Icinga plugin written in PHP to monitor individual supervisord processes.
  93. `supervisord-nagios <https://github.com/3dna/supervisord-nagios>`_
  94. A plugin for supervisorctl to allow one to perform nagios-style checks
  95. against supervisord-managed processes.
  96. `php-supervisor-event <https://github.com/mtdowling/php-supervisor-event>`_
  97. PHP classes for interacting with Supervisor event notifications.
  98. `PHP5 Supervisor wrapper <https://github.com/yzalis/Supervisor>`_
  99. PHP 5 library to manage Supervisor instances as object.
  100. `Symfony2 SupervisorBundle <https://github.com/yzalis/SupervisorBundle>`_
  101. Provide full integration of Supervisor multiple servers management into Symfony2 project.
  102. `sd-supervisord <https://github.com/robcowie/sd-supervisord>`_
  103. `Server Density <http://www.serverdensity.com>`_ plugin for
  104. supervisor.
  105. `node-supervisord <https://github.com/crcn/node-supervisord>`_
  106. Node.js client for Supervisor's XML-RPC interface.
  107. `node-supervisord-eventlistener <https://github.com/sugendran/node-supervisord-eventlistener>`_
  108. Node.js implementation of an event listener for Supervisor.
  109. `ruby-supervisor <https://github.com/schmurfy/ruby-supervisor>`_
  110. Ruby client library for Supervisor's XML-RPC interface.
  111. `Sulphite <https://github.com/jib/sulphite>`_
  112. Sends supervisord events to `Graphite <https://github.com/graphite-project/graphite-web>`_.
  113. `supervisord.tmbundle <https://github.com/countergram/supervisord.tmbundle>`_
  114. `TextMate <http://macromates.com/>`_ bundle for supervisord.conf.
  115. `capistrano-supervisord <https://github.com/yyuu/capistrano-supervisord>`_
  116. `Capistrano <https://github.com/capistrano/capistrano>`_ recipe to deploy supervisord based services.
  117. `capistrano-supervisor <https://github.com/glooby/capistrano-supervisor>`_
  118. Another package to control supervisord from `Capistrano <https://github.com/capistrano/capistrano>`_.
  119. `chef-supervisor <https://github.com/opscode-cookbooks/supervisor>`_
  120. `Chef <http://www.opscode.com/chef/>`_ cookbook install and configure supervisord.
  121. `SupervisorPHP <http://supervisorphp.com>`_
  122. Complete Supervisor suite in PHP: Client using XML-RPC interface, event listener and configuration builder implementation, console application and monitor UI.
  123. `Supervisord-Client <http://search.cpan.org/~skaufman/Supervisord-Client>`_
  124. Perl client for the supervisord XML-RPC interface.
  125. `Supermann <https://github.com/borntyping/supermann>`_
  126. Supermann monitors processes running under Supervisor and sends metrics
  127. to `Riemann <http://riemann.io/>`_.
  128. `gulp-supervisor <https://github.com/leny/gulp-supervisor>`_
  129. Run Supervisor as a `Gulp <http://gulpjs.com/>`_ task.
  130. `Yeebase.Supervisor <https://github.com/yeebase/Yeebase.Supervisor>`_
  131. Control and monitor Supervisor from a TYPO3 Flow application.
  132. `dokku-supervisord <https://github.com/statianzo/dokku-supervisord>`_
  133. `Dokku <https://github.com/progrium/dokku>`_ plugin that injects ``supervisord`` to run
  134. applications.
  135. `dokku-logging-supervisord <https://github.com/sehrope/dokku-logging-supervisord>`_
  136. `Dokku <https://github.com/progrium/dokku>`_ plugin that injects ``supervisord`` to run
  137. applications. It also redirects ``stdout`` and ``stderr`` from processes to log files
  138. (rather than the Docker default per-container JSON files).