問題タブ [start-stop-daemon]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
webserver - デーモンツールでウェブサーバーを監視する方法は?
デーモンツールスーパーバイザーをどのようにスクリプト化する必要がありますか?
DJ Bernsteinsのdaemontoolsを使用して、いくつかのプロセスを実行し続け、正常に動作し始めました。しかし今、私はそれらのプロセスに関するいくつかの追加の条件を監視する必要があり、それを行う方法についての良い情報を見つけることができませんでした。
私のシナリオでは、Webアプリ(pharo smalltalk仮想マシン)用にいくつかのプロセスを実行していて、それぞれがポートでhttpに応答します(これは負荷分散用です)。どういうわけか、それらが実行されているだけでなく、http要求に応答していることを確認するためにそれらにpingを実行したいと思います。30秒を超えてリクエストに特定の方法で応答しない場合は、クラッシュしたものとして扱われ、単に再起動する必要があります。
これはdaemontoolsでも可能ですか?もしそうなら、このスクリプトをどのように書き、どこに配置すればよいですか?またはこれに関するドキュメントはどこにありますか?
mongodb - start-stop-daemonを使用しているときにmongodbを複数回起動することはできませんか?
私は常にmongod
同じサーバー上で複数のプロセスを開始することによってレプリカセットをテストしてきました(複数のサーブを使用する方がコストがかかるため、この時点でテストしているだけです)。
ただし、mongoをバージョンv2.0.5に更新したため、mongodを再度起動しようとすると次のようになります(別のポート、別のデータベースフォルダーなど)。
mongod already running
なんでそうなの?このチェックをスキップするフラグはありますか?
更新:何らかの理由で、これは私がmongod
そのように実行したときにのみ発生します:
sudo start-stop-daemon --start -c mainuser --exec /usr/local/bin/mongod -- --journal --nohttpinterface --dbpath /home/mainuser/data/db-secondary --logpath /home/mainuser/data/logs/mongodb-secondary.log --logappend --replSet appname --port 30001
私がそのようにそれを実行するとき、それは起こりません:
sudo /usr/local/bin/mongod --journal --nohttpinterface --dbpath /home/mainuser/data/db-secondary --logpath /home/mainuser/data/logs/mongodb-secondary.log --logappend --replSet appname --port 30001
残念ながらstart-stop-daemon
、Ubuntu10.04LTSのアップスタートスクリプトで使用するためにを使用する必要があります。なぜこの問題が発生するのでしょうか?
のマンページを読んだ後、start-stop-daemon
それが同じ「サービス」であると認識しているため、意図的にプロセスを再開しようとしていないことが明らかになります。ただし、start-stop-daemon
Upstartを使用して別のユーザーとして実行できるようにするためにのみ使用しています。チェックをバイパスすること、または別の方法でupstartで非sudoユーザーとして実行することは可能ですか?
nginx - ファイルが存在していても、start-stop-daemon は nginx.pid ファイルに書き込みません
これは繰り返される質問のように思えるかもしれませんが、そうではありません。start-stop-daemon
PIDファイルを作成しない記事をいくつか見つけました。しかし、私の場合は、すでに PID ファイルを作成しています。サーバーで次のコマンドを実行して、Nginx を起動します。
PID ファイルは既に存在しますが、まだstart-stop-daemon
ファイルに書き込みません。--make-pidfile
オプションを使用しようとしましたが、start-stop-daemon
間違った pid をファイルに書き込みます。
linux - Debianでstart-stop-daemonで開始されたプロセスからプロセス出力をリダイレクトするにはどうすればよいですか?
これについてはすでにいくつかの質問がありますが、どれもうまくいかないようです。現在ダウンしている本番システムがあり、デーモンからstderr出力をすばやく取得してデバッグできるようにする必要があります。
(init.dスクリプトで)呼び出されたポイントから出力をリダイレクトできると思っていましたが、非常に困難であることがわかりました。
これは動作しません。実行可能ファイルを呼び出して出力をリダイレクトするシェルスクリプトを実行しようとしましたが、ログファイルは空のままでした(プロセスが情報を出力していることはわかっています)。
どんな助けでも大歓迎です。
valgrind - start-stop-daemon と Valgrind
start-stop-daemon を使用してプログラムを起動していますが、Valgrind と併用したいと考えています。
これは私が start-stop-daemon を使用する方法です:
これは、スタンドアロン アプリケーション (ジャンク) で Valgrind を使用する方法です。
そしてそれはうまくいきます。
私は次のようなことをしたいと思います:
start-stop-daemon は valgrind を受け入れるようですが (フラグなしで valgrind しかない場合は--tool=memcheck --leak-check=yes --log-file=/usr/magnus/logFile
受け入れられるようです)、start-stop-daemon はそれを受け入れません。
unrecognized option '--tool=memcheck'
valgrind フラグのstart-stop-daemon: を取得します。
これを行う方法を知っている人はいますか?
ruby-on-rails - Railsサーバーデーモンを実行するにはどうすればよいですか?
私は Rails World の初心者で、Rails テスト サーバーをデーモン モードで実行する必要があります。
aa -d フラグがあることに気付きましたが、うまくいきません..
こんなはずじゃないの?
python - 停止時にアクションを実行するようにPythonデーモンを取得する方法
ここで見つけたコードを使用して単純なデーモンを実装しているので、停止する直前にデーモンにアクションを実行させる方法があるかどうか疑問に思っています。私のスクリプトでは、外部デバイスへのシリアル接続を使用しているので、デーモンをシャットダウンする前に、デバイスをクリーンに閉じたいと考えています。
App()クラスのinitループ中に、すべての準備と準備セットアップを行っています。次に、run関数は、シリアル接続の開始、最初のいくつかの値の破棄、およびメインループの開始(シリアル接続から値を取得し、それらを外部サーバーに保存するだけ)を処理します。
ここで、シリアル接続を閉じたり、ログファイルに送信されたデータの概要を取得したりするなど、終了直前のアクションを追加します。
それを行う簡単な方法はありますか?(またはそれにとって難しいものでさえ)。
記録のために、私はデーモンを作成するこの方法を使用することも考えました。これは、私がやろうとしていることを行うためのより簡単な方法である可能性があります。
今のところ私のコードは次のようになります。
助けてくれてありがとう!
linux - 「start-stop-daemon:統計できません」
私は次のstart-stop-scriptを持っています:
スクリプトを実行しようとすると、次の出力が得られます。
私はその$APP_DIR/$APP_BIN
部分で何を間違えましたか?