* Figure out proper logger lvl for each msg. So a person can choose only to log local6.warn and get only state transition messages and not any of the watch chatter. * Better error output than just vanilla exception traces * Better output for cli commands than just "ok" * munin support? Issues encountered in the wild ------------------------------ * Whenever bluepill executes user specified commands (like start_command, stop_command, restart_command), it should execute it in such a way that it does not affect the stability of bluepill daemon itself. * Whenever a command is sent to a process group, execute them in parallel for each process in the group instead of serially. * Issuing commands to the running bluepill daemon using the cli can trigger flapping condition. So, running bluepill restart can cause a flapping trigger to be fired depending on internal state. * Have validations for easy to make mistakes in the config file. For ex: + Accidently specifying the same pid file for multiple processes. + Accidently specifying the same process name for multiple processes. + Validate the minimum number of config options to setup successful monitoring. For example, for a valid "process", the only 2 things that are required are the start command and the pid file. We should tell a user at the time of loading whether the config file is syntactically and semantically valid.