Skip to content
Snippets Groups Projects
Select Git revision
0 results

README.md

Blame
  • To learn more about this project, read the wiki.

    Supervisor-vms: A Process Control System for OpenVMS

    Supervisor-vms is a tools that allows to monitor and control a number of processes on OpenVMS systems.

    Use process termination mailbox and AST. No CPU usage if no event occurs.

    It was inspired by supervisor

    Read the supervisor documentation is probably a good idea. Many of configuration parameters are the same.

    Requirements

    1. Python 3.10 (VSI version)
    2. ovms module

    Probably better to use the LD image which contains all the necessary modules.

    Components

    All logicals are defined in table SUPERVISORD_TABLE

    supervisord.py

    The server piece of supervisor is named supervisord.
    It is responsible for starting processes (programs) at its own invocation, responding to commands from clients, restarting crashed or exited processeses

    The server process uses a configuration file.

    supervisorctl.py

    The command-line client piece of the supervisor is named supervisorctl.
    It provides a shell-like interface to the features provided by supervisord.
    From supervisorctl, a user can connect to the supervisord process, get status on the processes controlled by, stop and start processes of, and get lists of running processes (programs).

    The command-line client talks to the server across a mailbox (SUPERVISORD_CMD logical)

    Running supervisord

    Required privileges: ALTPRI, SYSNAM, PRMMBX, IMPERSONATE, SETPRV, WORLD

    First create a supervisord.conf, you can use the template supervisord.conf_template as an example.

    Then start supervisord, probably in nodaemon mode initially.

    Finally, if all seem correct, shutdown it and restart it on daemon mode.

    Running processes doesn't need to be stopped. When restarting supervisord find the necessary informations for running processes using the logical name table SUPERVISORD_TABLE.

    supervisord Command-Line Options

    -c FILE, --configuration=FILE
    The path to a **supervisord** configuration file. Unix syntax should be used
    -n, --nodaemon
    Run supervisord in the foreground
    -p pwd, --password=pwd
    Optional password, used with supervisorctl
    -h, --help
    Show supervisord command help

    Running supervisorctl

    Required privilege: PRMMBX, SYSNAM

    supervisorctl Command-Line Options

    -c FILE, --configuration=FILE
    The path to a supervisord configuration file. Unix syntax should be used
    -p pwd, --password=pwd
    Optional password, used with supervisord
    -h, --help
    Show supervisord command help

    supervisorctl Actions

    help
    Print a list of available actions
    help <action>
    Print help for <action>
    start <name>
    Start a process
    start <name> <name>
    Start multiple processes
    start all
    Start all processes
    status
    Get all process status info.
    status <name>
    Get status on a single process by name
    status <name> <name>
    Get status on multiple named processes
    stop <name>
    Stop a process
    stop <name> <name>
    Stop multiple processes
    stop all
    Stop all processes
    shutdown
    Stop supervisord, don't stop processes