プロセス監視として monit を使うと便利ですが,使用するスクリプトに対して起動するユーザーや環境変数を指定する機能はありません.
そこで例えば /share/tmp.sh start
というスクリプトを www ユーザーで RUN_ENV=production
という環境変数で起動するには start program
を以下のように設定するとよいです.
start program = "/usr/bin/sudo -u www /usr/bin/env RUN_ENV=production /share/tmp.sh start" with timeout 10 seconds
そもそも環境変数の PATH が渡っていないのでコマンドは絶対パスで渡すのと最初に sudo でユーザーを指定してから環境変数を env で渡すのがポイントです.