2016-08-20 3 views
0

Debian Linuxのアプリケーションプロジェクトで、サービスによって作成されたPIDファイルによって他のサービスを監視するソフトウェアウォッチドッグが必要です。ウォッチドッグを実行する前にLinux(Debian)のウォッチドッグデーモンで問題を検出する方法

私はhttp://linux.die.net/man/5/watchdog.conf からの手順に従い、背後にあるメカニズムは、ウォッチドッグは、それらが/ etc /ウォッチドッグ、confの中に設定されているこれらのPIDファイルの存在をチェックすることです

apt-getのウォッチドッグ

をインストールすることで、それをインストールしていますファイル。

私は サービスservice-nameで任意のサービスを停止することで、それをテストしているが

ウォッチドッグを停止し、そのサービスが、それはウォッチドッグタイムアウト期間に等しい数秒後に、システムを再起動しますので、状態を実行しているではありません検出します。

それは、サービスの設定ファイルの場合は、ユーザーを終了する任意の通告なしにシステム無限の時間を再起動してしまう私たちは、ディスプレイに以下の製品を持って考えてみましょうが破損しているなど

実用的な期待は、ウォッチドッグによるアクションをとる前に、ということです再起動/停止/ソフトリスタートのために私は、プログラマがエンドユーザにインテイションロジックを実装できるように、ウォッチドッグのステータスを知りたいと思っています。

/etc/init.d/のwatchdog initスクリプトを変更して、ソフトウェアウォッチドッグを停止したときにユーザプログラムを呼び出して、プログラマが不揮発性メモリにカウンタを維持して無限の時間の再起動を避けることができます。

上記以外私は、このソフトウェアウォッチドッグまたはウォッチドッグデーモンがステータスを取得する方法について詳しく知りたいと思います。私はサービス、CPU過負荷、温度などを監視するために実装しましたが、ウォッチドッグアクションの前にイベントが発生しないため、システムがサービスの停止、CPU過熱またはCPU過負荷などで再起動する理由がわかりません。

答えて

1

Aウォッチドッグは、復旧を超えて失敗した後にシステムを救助する最後の手段として設計されています。ハードウェアウォッチドッグは物理的にCPUをリセットし、システムが長期間ハングしないようにします。

すべてのソフトウェアが失敗したと想定されるため、ソフトウェアでこれが起こるという警告は表示されません。

プロセスが応答しなくなったことを検出するソリューションが必要な場合は、そのプロセスをウォッチドッグとは別にする必要があります。

似た何かのため、この質問への回答を参照してください: Designing a monitor process for monitoring and restarting processes

関連する問題