Process monitoring with Bluepill

On our current project my colleague chose Bluepill for process monitoring. Bluepill has been working well so I wanted to recommend it and share some notes.


Configuration is kept in a .pill file, which is a Ruby source file with a DSL syntax to define processes and their configurations. For each process we define how to start it, the pid file for it, a log file to send standard out and standard error to, and whether to daemonize the process. We're currently monitoring Redis and Node.JS (which acts as our WebSocket server).

Pill files are organized by environment. We have a pill file for the development, production, and staging environments. Unfortunately we don't have a lot of production experience with Bluepill yet, but the authors have stated that Bluepill itself will consume a low amount of memory.

Load a configuration
sudo bluepill load config/bluepill/development.pill
Start the services
sudo bluepill start
Check the service status
sudo bluepill status
redis-server(pid:40945): up
websocket-server(pid:40950): up

I hope this helps you get started with Bluepill. Do you use something else to monitor your processes?