Nutritious Pomegranate Muffins

    lil-pids

    2.6.1 • Public • Published

    lil-pids

    Dead simple process manager with few features

    npm install -g lil-pids
    

    omg

    First create a file with the commands you wanna have running

    # assuming this file is called 'services'
    node server.js
    node another-server.js
    

    Then simply start lil-pids with the filename

    lil-pids ./services
    

    It'll watch the file so every time you update it, old processes no longer referenced from the file will be shutdown and any new ones will be spawned.

    lil-pids will forward all stdout, stderr to its own stdout, stderr prefixed with the process id.

    It will also tell you when a command has been spawned, exited and finally it will restart processes when the crash/end.

    lil-pids can also write the pids of the current running processes to a file. Just pass the pids filename as the 2nd argument

    lil-pids ./services ./pids
    

    Then you can simply cat ./pids to see what is running at the moment.

    That's it!

    Pro-tips

    • Spawn lil-pids ./services ./pids with your OS' service monitor. Then it'll startup at boot and every thing you need to do is edit the services file.

    • Add > output.log and 2> errors.log to the end of a command to persist logs to files.

    • Cat the pids file and use kill to restart a running process. Use ps / top to check how something is running.

    • Add # in front of a service to disable it temporarily.

    Start on server boot

    To start lil-pids on server boot (or restart it when it crashes) you can add it using systemd.

    npm install -g add-to-systemd
    sudo $(which add-to-systemd) -u $(whoami) -e PATH=$PATH lil-pids $(which lil-pids) ./services ./pids
    sudo systemctl start lil-pids
    

    License

    MIT

    Keywords

    none

    Install

    npm i lil-pids

    DownloadsWeekly Downloads

    24

    Version

    2.6.1

    License

    MIT

    Last publish

    Collaborators

    • mafintosh