Monitに監視させようとしている簡単なスクリプトがあります。いくつか掘り下げた後、この小さなナゲットを見つけました。これstart program = "su - myuser -c '/home/user/myscript.rb start' "
は機能するはずですが、ログファイルを見ると、次のように書かれています。
[PDT Oct 30 02:47:17] info : 'simple_script' start: su
[PDT Oct 30 02:47:17] error : Error: Could not execute su
同様に、以前の試みはスペースの前の部分のみを読み取るように見えるため、次のようになります。
start program = "/home/user/.rvm/rubies/ruby-1.9.2-p290/bin/ruby /home/user/simple_script_daemon.rb stop"
結果は…</p>
[PDT Oct 30 03:09:49] info : 'simple_script' start: /home/user/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
最初の例のように失敗することはありませんが、スペースの前の部分のみを実行するようです。
これは私の完全な声明です:
check process simple_script
with pidfile /home/user/simple_script.rb.pid
start program = "su - user -c '/home/user/simple_script_daemon.rb start' "
stop program = "su - user -c '/home/user/simple_script_daemon.rb stop' "
group simple_script
何が起こっているのかわからない場合は、ぜひご連絡ください。