wrapper.ignore_signals プロパティ |
||||||||
警告このプロパティの説明を読まずに、パラメータを変更することは絶対にしないで下さい。 設定を間違えると、期待どおりに動作せず、Wrapperの動作不良や不具合の原因となります。 このプロパティには、 Wrapperがシステムシグナルを「無視する(TRUE)/無視しない(FALSE)」を設定します。 デフォルト値は「FALSE」(無視しない)です。 もし、「TRUE」(無視する)が設定されている場合、Wrapperは、 UNIX上での「TERM」あるいは「INT」シグナルや、Windows上での[CTRL]+[C]のキー操作イベントに応答しません。 UNIXシステム上で、クローンジョブのようなバックアッププログラムが システム全体へ「TERM」シグナルを発信することがあり、それでWrapperがシャットダウンすることがあります。 このプロパティを「TRUE」(無視する)に設定することで、これらのシグナルを無視することができます。
ほとんどのケースでは、このプロパティの設定は必要ないか、あるいは、手動での設定を希望することでしょう。
Wrapperに同梱して提供しているシェルスクリプトを使って、
そのスクリプトの最初のセクションで、単に
[IGNORE_SIGNALS]プロパティを有効化(コメント記号を外す)して、
アンカーファイルによるWrapper停止機能を、設定することができます。
これで、
[wrapper. もし、スクリプトが、カレントシェルで実行するように[console]コマンドを引き渡された場合、 [CTRL]+[C]のキー操作などを含む、システムシグナルに依然として応答します。 [start]コマンドが使われた場合、 Wrapperはデーモンプロセスとして起動して、全ての「INT」や「TERM」シグナルを無視します。 シェルスクリプトで[stop]コマンドを実行することで、 あるいは、手動でアンカーファイルを削除することで、Wrapperを停止することができます。 Windows上では、「SHUTDOWN」(シャットダウン)や「LOGOFF」(ログオフ)イベントは、 このプロパティ値に関わらず、通常どおり取り扱われます。 万一、タイミング良く終了をし損なう場合には、 システムは、どんなイベントでもアプリケーションを強制終了します。 WrapperがWindowsサービスとして動作しているなら、 「LOGOFF」(ログオフ)イベントは常に無視されますので、ご注意ください。
もし、[IGNORE_SIGNALS]プロパティが、
[wrapper. 注意もし、このプロパティを手動で設定する予定であるならば、 自力でシャットダウンできるアプリケーションの能力をテストして、 完全に信頼できるまで待つべきであることをお薦めします。 警告もし、このプロパティを「TRUE」(シグナルを無視する)に設定すると、 外部的にWrapperへ停止を伝えることが出来なくなります。 Windows上では[CTRL]+[C]のキー操作がもはや機能しなくなり、 UNIXシステム上では [CTRL]+[C]のキー操作や、通常の「kill」シグナルが無視されます。 つまり、UNIX上で、 もし、Wrapperを開始する前に、 そのスクリプト内で[IGNORE_SIGNALS]プロパティが 有効化(コメント記号を外す)されていないならば、 Wrapperに同梱して提供しているシェルスクリプトでは JVMを停止することができない、という意味です。 UNIX上で、依然として、 [kill -9]シグナルを使って 強制的にプロセスを停止することもできますが、 そうすると、JVMの動作を残したままWrapperを停止(kill)します。 JVMのpingタイムアウトの時間切れの後、JVMは自力で終了しますが、 Wrapperが停止(kill)された後のコンソール出力は、全て失われます。 もし、Wrapperがコンソールアプリケーションとして動作しているならば、 Windows上では、タスクマネージャーからWrapperとJVMを強制終了することができます。 もし、Windowsサービスとして動作しているならば、 依然としてWrapperを通常どおり停止することができます。 注意このプロパティを、 [WRAPPER]、 [JAVA]、あるいは、 [BOTH]に設定することも可能で、 Wrapperプロセス、Javaプロセス、あるいは両方のプロセスに適用するべき シグナルの機能性を無視するかどうかコントロールするために使います。 これらの値は主としてテスト用に役に立ちます。 |
参照: シグナル関連 |
|