PHP Classes
elePHPant
Icontem

PHP Supervisor Process Dashboard: Monitor and control processes running on a servers

Recommend this page to a friend!
  Info   View files Documentation   View files View files (12)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2019-12-12 (11 days ago) RSS 2.0 feedNot yet rated by the usersTotal: 47 This week: 18All time: 9,677 This week: 13Up
Version License PHP version Categories
jaxon-supervisor 0.0.1BSD License5PHP 5, System information, Systems ad..., L..., A...
Description Author

This package can monitor and control processes running on servers.

It provides a plugin for the Jaxon framework that can display the status of processes on one or more servers that being monitored.

It uses AJAX to send requests to query the processe statuses and updates the process statuses on the current Web page.

The package can also send commands to the servers to start and stop the server processes.

  Performance   Level  
Name: Thierry Feuzeu <contact>
Classes: 13 packages by
Country: Cameroon Cameroon
Innovation award
Innovation award
Nominee: 1x

 

Details

A Supervisor dashboard based on the Jaxon ajax library

There are already several packages that allow to control multiple Supervisor instances from a single dashboard. However, all these packages are standalone applications, with all the constraints that this implies in terms of installation, configuration, authentication, etc.

This package allows to insert a dashboard for Supervisor into an existing PHP application. Thanks to the Jaxon library, it installs and runs in a page of the application, which can be loaded with an HTTP or an Ajax request. All its operations are performed with Ajax requests.

Features

  • Show the processes on Supervisor servers with status and running time.
  • Start, restart or stop a process on a server.
  • Start, restart or stop all the processes on a server.
  • Start or stop refresh timer.
  • Trigger refresh.

Documentation

  1. Install the jaxon library so it bootstraps from a config file and handles ajax requests. Here's the documentation.
  2. Install this package with Composer. If a Jaxon plugin exists for your framework, you can also install it. It will automate the previous step.
  3. Declare the package and the Supervisor servers in the app section of the Jaxon configuration file.
    'app' => [
        // Other config options
        // ...
        'packages' => [
            Lagdo\Supervisor\Package::class => [
                'servers' => [
                    'first_server' => [
                        'url' => 'http://192.168.1.10',
                        'port' => '9001',
                    ],
                    'second_server' => [
                        'url' => 'http://192.168.1.11',
                        'port' => '9001',
                    ],
                ],
            ],
        ],
    ],

  1. Insert the CSS and javascript codes in the HTML pages of your application using calls to jaxon()->getCss() and jaxon()->getScript(true).
  2. In the page that displays the dashboard, insert its HTML code with a call to jaxon()->package(\Lagdo\Supervisor\Package::class)->getHtml(). Two cases are then possible.

    - If the dashboard is displayed on a dedicated page, make a call to jaxon()->package(\Lagdo\Supervisor\Package::class)->ready() when loading the page.

    - If the dashboard is loaded with an Ajax request in a page already displayed, execute the javascript code returned the call to jaxon()->package(\Lagdo\Supervisor\Package::class)->getReadyScript() when loading the page.

Notes

The HTML code of the package uses the Bootstrap CSS framework, qui which must also be included in the page. It is entirely contained in a <div class="col-md-12"> tag.

Support for other frameworks will be added in future releases.

Contribute

  • Issue Tracker: github.com/lagdo/jaxon-supervisor/issues
  • Source Code: github.com/lagdo/jaxon-supervisor

License

The project is licensed under the BSD license.

  Files folder image Files  
File Role Description
Files folder imageajax (1 file)
Files folder imageconfig (1 file)
Files folder imagesrc (2 files)
Files folder imagetemplates (2 directories)
Accessible without login Plain text file .styleci Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  ajax  
File Role Description
  Accessible without login Plain text file Client.php Class Class source

  Files folder image Files  /  config  
File Role Description
  Accessible without login Plain text file supervisor.php Class Class source

  Files folder image Files  /  src  
File Role Description
  Accessible without login Plain text file Client.php Class Class source
  Accessible without login Plain text file Package.php Class Class source

  Files folder image Files  /  templates  
File Role Description
Files folder imagecodes (1 file)
Files folder imageviews (1 directory)

  Files folder image Files  /  templates  /  codes  
File Role Description
  Accessible without login Plain text file script.latte Data Auxiliary data

  Files folder image Files  /  templates  /  views  
File Role Description
Files folder imagebootstrap (3 files)

  Files folder image Files  /  templates  /  views  /  bootstrap  
File Role Description
  Accessible without login Plain text file home.latte Data Auxiliary data
  Accessible without login Plain text file process.latte Data Auxiliary data
  Accessible without login Plain text file server.latte Data Auxiliary data

 Version Control Unique User Downloads Download Rankings  
 100%
Total:47
This week:18
All time:9,677
This week:13Up