World Map
Java Service Wrapperは、御社Javaアプリケーション製品の安定した信頼性を高める最短最善の方法です。
  • Free Trial
  • Buy Now
wrapper.timer.<n>.<x> プロパティ

wrapper.timer.<n>.<x> プロパティ

対応バージョン :3.3.0
対応エディション :プロフェッショナル版スタンダード版 (未対応)コミュニティー版 (未対応)
対応プラットフォーム :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/OSIBM z/Linux

警告

このプロパティの説明を読まずに、パラメータを変更することは絶対にしないで下さい。 設定を間違えると、期待どおりに動作せず、Wrapperの動作不良や不具合の原因となります。

このタイマー・プロパティでは、クローン・ジョブのような指定された時刻やインターバル(一定間隔)で、 JVMの再起動、シャットダウン、スレッドダンプのスケジュール予約を可能にします。 ユーザー・アプリケーションにメモリリークが発生する場合など、 定期的な再起動を必要とするケースで、このタイマーは便利な機能です。

基本設定:

次の例では、毎日AM4時にJVMを再起動します。

設定例:
wrapper.timer.1.action=RESTART
wrapper.timer.1.interval=hour=4

各タイマーの宣言は、2つのプロパティから成り立っています:

<n>コンポーネント部:

プロパティ名の「<n>」コンポーネント部には、 「1」からカウントアップしていくインテージャー(整数値)のナンバリング数値を入れて指定します。 デフォルトでは、連番であり欠番で飛ぶことはないはずです。 [wrapper.ignore_sequence_gaps] プロパティで、シーケンス内でギャップ(途切れ)検索を「許可する/許可しない」を任意に設定にすることができます。

複数のアクション:

Wrapperバージョン3.5.0から、スペースやカンマで区切ることで、複数のアクションを指定することが可能です。 複数のアクションを指定するとき、指定した順番で立て続けに実行されます。

次の例は、毎日AM4時にスレッドダンプを実行して、その後、JVMを再起動します。

設定例:
wrapper.timer.1.action=DUMP,RESTART
wrapper.timer.1.interval=hour=4

wrapper.timer.<n>.action プロパティ

対応バージョン :3.3.0
対応エディション :プロフェッショナル版スタンダード版 (未対応)コミュニティー版 (未対応)
対応プラットフォーム :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/OSIBM z/Linux

可能なタイマー・アクションは次のとおり:

  • [DEBUG] :

    毎回タイマーが発生するごとに、デバッグ・メッセージがログ化されます。 この機能は、どのようにタイマーが動作しているか把握するのに便利です。

  • [DUMP] :

    毎回タイマーが発生するごとに、JVMがスレッドダンプを実行するようリクエストします。 メモリや動作の問題を追究するのに役立ちます。 もし高い頻度でインターバル(一定間隔)を設定する場合には、 大きいサイズのログファイルを取り扱えるように、 ログ化・コンフィギュレーション・プロパティが 正しくセットアップされていることを確認してください。 JVMが動作していない環境では、この値を無視します。

  • [GC] (ver. 3.5.7から):

    毎回タイマーが発生するごとに、JVMで完全なガベージコレクション掃除を実行します。 完全な掃除をすると、ガベージコレクション中、しばしば全てのスレッドがフリーズしたりなど引き起こすため、 これを頻繁にするとJVMのパフォーマンスに影響しますのでご理解ください。 JVMが動作していない環境では、この値を無視します。

  • [RESTART] :

    毎回タイマーが発生するごとに、Javaアプリケーションを再起動します。 JVMが動作していない環境では、この値を無視します。

  • [SHUTDOWN] :

    毎回タイマーが発生するごとに、Wrapperがシャットダウンされます。 これは、外部からWrapperが再起動されない限り、明らかに一度限りのシャットダウンで実行されます。

  • [USER_<n>] (ver. 3.5.0から)(プロフェッショナル版): ユーザー定義イベントを発生します。

  • [PAUSE] (ver. 3.5.0から) :

    ポーズ(一時停止)が可能でJVMが動作している場合、Javaアプリケーションをポーズ(一時停止)します。 詳しくは[wrapper.pausable]プロパティをご覧ください。

  • [RESUME] (ver. 3.5.0から):

    ポーズ(一時停止)状態にあるとき、Javaアプリケーションをレジューム(再開)します。 これは、JVMが停止ではなくポーズ(一時停止)している場合に利用可能です。 詳しくは[wrapper.pausable]プロパティをご覧ください。

  • [NONE] :

    事実上、タイマー機能を無効にします。 断続的に利用したいタイマーの場合、再設定しなければならない手間を回避するために、 タイマー設定を削除するのではなく、一時的にタイマー機能を無効にするのに便利です。

wrapper.timer.<n>.interval プロパティ

対応バージョン :3.3.0
対応エディション :プロフェッショナル版スタンダード版 (未対応)コミュニティー版 (未対応)
対応プラットフォーム :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/OSIBM z/Linux

トークンの組み合わせを使って、毎回決まった定刻に動く、タイマーのインターバル(一定間隔)を設定できます。 例えば、次の例では、"2日毎の04:30:10の時刻にJVMを再起動します":

設定例:
wrapper.timer.1.action=RESTART
wrapper.timer.1.interval=day-of-week=*/2; hour=4; minute=30; second=10

インターバル(一定間隔)のトークンに可能な値は次のとおり:

  • [day-of-week] - 「1(日曜) - 7(土曜)」の範囲で曜日を指定します。

  • [hour] - 「0 - 23」の範囲で時刻(時)を指定します。

  • [minute] - 「0 - 59」の範囲で時刻(分)を指定します。

  • [second] - 「0 - 59」の範囲で時刻(秒)を指定します。

トークン値には、次の形式が入ります:

  • 絶対値: - [5]のような値は、単一の固定値を指定するために使います。 例えば「hour=5」ならば「5時」です。

  • 全ての値: - [*]のような値は、 ワイルドカード文字と同じで、可能な値の全てを指定するために使います。

  • インターバル(一定間隔)の値: - [*/5]のような値は、トークンの可能な最小値で始まる、 通常のインターバル(一定間隔)値のセットを指定するために使います。 例えば「分」トークンに、[*/5]値を設定すると、「5分毎」が定義されます。

ほとんどのケースでは、 必ずしも、全てのインターバル(一定間隔)トークンを宣言する必要はありません。 トークンが省略された場合、それより上位レベルのトークンの範囲には [*]のデフォルト値が適用され、 それより下位レベルのトークンの範囲には最小値が適用されます。

次の宣言はどれも同類です:
wrapper.timer.1.interval=hour=4
wrapper.timer.1.interval=hour=4; minute=0; second=0
wrapper.timer.1.interval=day-of-week=*; hour=4
wrapper.timer.1.interval=day-of-week=*; hour=4; minute=0; second=0