12.2.4 指定可能なプロパティ
各機能で指定可能なプロパティについて説明します。
- 〈この項の構成〉
(1) uCART全体に関するプロパティ
uCART全体に関するプロパティを次に示します。
キー名称 |
内容 |
指定可能値 |
省略可否 |
デフォルト |
---|---|---|---|---|
common.base |
ログ出力先のデフォルトのルートディレクトリ,およびTomcatプロセスモニタやTomcatサーバプロセスの作業ディレクトリとして利用します。 複数のTomcatプロセスモニタのプロセスを同一環境で動かす場合は,プロセスごとに一意となる値を指定してください。 |
絶対パス |
可 |
${catalina.base}/logs |
common.java.hitachi.javacoredir |
日立JavaVMを使用する場合,スレッドダンプの出力先ディレクトリを指定します。環境変数JAVACOREDIRが指定されていた場合,このプロパティの値は使用されません。 |
絶対パス |
可 |
${common.base}/threaddump |
(2) Tomcatプロセスモニタに関するプロパティ
Tomcatプロセスモニタに関するプロパティを次に示します。
キー名称 |
内容 |
指定可能値 |
省略可否 |
デフォルト |
---|---|---|---|---|
monitor.log.message.filepath |
メッセージログファイルの出力先ディレクトリとファイルプリフィックスを指定します。出力先のファイルパスは<monitor.log.message.filepathの指定値><ローテーション番号>.logになります。 複数のTomcatプロセスモニタのプロセスを同一環境で動かす場合は,プロセスごとに一意となる値を指定してください。 |
絶対パス |
可 |
${common.base}/ucarmessage |
monitor.log.message.filenum |
メッセージログファイルのローテーション数を指定します。 |
1〜16の整数で指定します。 |
可 |
4 |
monitor.log.message.filesize |
メッセージログの1ファイル当たりに書き込むおおよその最大量(単位:バイト)を示す数値を指定します。「おおよそ」とは,行の途中でファイルをローテーションさせないため,超過することがあることを意味します。 |
1〜2147483647の整数で指定します。 |
可 |
33554432 |
monitor.log.message.level |
メッセージログのログ取得レベル(SEVERE,WARNING,INFO,CONFIG,FINE,FINER,FINEST,ALLのどれか)を示す文字列を指定します。各レベルの重要度はjava.util.logging.Levelに定義されているとおりです。詳細は,「12.2.5 ログ取得レベル」を参照してください。 |
|
可 |
INFO |
monitor.log.maintenance.filepath |
保守ログファイルの出力先ディレクトリとファイルプリフィクスを指定します。出力先のファイルパスは<monitor.log.maintenance.filepathの指定値><ローテーション番号>.logになります。 複数のTomcatプロセスモニタのプロセスを同一環境で動かす場合は,プロセスごとに一意となる値を指定してください。 |
絶対パス |
可 |
${common.base}/ucarmaintenance |
monitor.log.maintenance.filenum |
保守ログファイルのローテーション数を指定します。 |
1〜16の整数で指定します。 |
可 |
4 |
monitor.log.maintenance.filesize |
保守ログの1ファイル当たりに書き込むおおよその最大量(単位:バイト)を示す数値を指定します。「おおよそ」とは,行の途中でファイルをローテーションさせないため,超過することがあることを意味します。 |
1〜2147483647の整数で指定します。 |
可 |
33554432 |
monitor.log.maintenance.level |
保守ログのログ取得レベル(SEVERE,WARNING,INFO,CONFIG,FINE,FINER,FINEST,ALLのどれか)を示す文字列を指定します。各レベルの重要度はjava.util.logging.Levelに定義されているとおりです。 詳細は,「12.2.5 ログ取得レベル」を参照してください。 |
次のどれかを指定します。
|
可 |
INFO |
monitor.jvm.options |
TomcatプロセスモニタのJavaプロセスに指定するJavaVMオプションを指定します。 複数のオプションを指定する場合,空白区切りで指定してください。 自動的に設定されるJavaVMオプション(「13.2.3 JavaVMログ」に記載があるもの)を指定した場合は,デフォルト値ではなく,このプロパティでの指定値が適用されます。 |
任意文字列 |
可 |
- |
monitor.tomcat.change.work.directory.enabled |
Tomcatの作業ディレクトリの変更可否を指定します。
|
|
可 |
true |
monitor.tomcat.forcestop.timeout |
異常検知時にTomcatサーバプロセスを終了する場合の,プロセス終了待ちタイムアウト時間(単位:ミリ秒)を指定します。 |
1〜3600000の整数で指定します。 |
可 |
10000 |
monitor.rest.port |
TomcatプロセスモニタのHTTP機能の受付ポート番号を指定します。 |
1〜65535の整数で指定します。 |
可 |
28081 |
monitor.rest.bindaddress |
TomcatプロセスモニタのHTTP機能に割り当てるIPアドレスを指定します。 リモートマシンから接続する場合に指定してください。その場合,ファイアウォールなどでアクセス元を制限したり,通信経路の安全性を確保したりするように注意してください。 localhostにループバックアドレス以外のIPアドレスを割り当てている場合,ループバックアドレスの値を設定してください。 |
任意文字列 |
可 |
localhost |
(3) 稼働監視機能に関するプロパティ
稼働監視機能に関するプロパティを次に示します。
キー名称 |
内容 |
指定可能値 |
省略可否 |
デフォルト |
---|---|---|---|---|
healthcheck.rest.connecttimeout |
Tomcatサーバプロセスから稼働監視コンポーネントへのHTTP通信の接続タイムアウト時間(単位:ミリ秒)を指定します。0を指定した場合はタイムアウトしません。 |
0〜2147483647の整数で指定します。 |
可 |
3000 |
healthcheck.rest.readtimeout |
Tomcatサーバプロセスから稼働監視コンポーネントへのHTTP通信の読み込みタイムアウト時間(単位:ミリ秒)を指定します。0を指定した場合はタイムアウトしません。 |
0〜2147483647の整数で指定します。 |
可 |
10000 |
healthcheck.heartbeat.interval |
Tomcatサーバプロセスから稼働監視コンポーネントへ送信するハートビートの送信間隔(単位:ミリ秒)を指定します。 |
1〜2147483647の整数で指定します。 |
可 |
10000 |
healthcheck.heartbeatdelay.enabled |
稼働監視コンポーネントがTomcatサーバプロセスからのハートビートを監視するかどうかを指定します。
|
|
可 |
true |
healthcheck.heartbeatdelay.timeout |
ハートビート待ちタイムアウトを指定します。 稼働監視コンポーネントがTomcatサーバプロセスからのハートビートを受信してから次のハートビートを受信するまで待つ時間(単位:ミリ秒)を指定します。 |
0〜2147483647の整数で指定します。 |
可 |
60000 |
healthcheck.heartbeatdelay.actions.failure.usercommand.idrefs.<n> |
稼働監視コンポーネントでハートビート待ちタイムアウトが発生した場合に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.heartbeatdelay.actions.failure.snapshot |
稼働監視コンポーネントでハートビート待ちタイムアウトが発生した場合に,スナップショットログを収集するかどうかを指定します。
|
|
可 |
true |
healthcheck.heartbeatdelay.actions.failure.terminate |
稼働監視コンポーネントでハートビート待ちタイムアウトが発生した場合に,Tomcatサーバプロセスを停止するかどうかを指定します。
|
|
可 |
false |
healthcheck.heartbeatdelay.actions.recovery.usercommand.idrefs.<n> |
稼働監視コンポーネントでハートビート待ちタイムアウトが発生したあとに,ハートビートを受信した初回に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.unchangedlogfile.logfilename.glob |
Tomcatサーバプロセス起動監視でログファイル更新チェックに使用するログファイル名をglob形式で指定します。 |
glob形式で指定したファイル名 |
可 |
catalina.*.log |
healthcheck.initdelay.timeout |
Tomcatサーバプロセス初期化完了通知待ちタイムアウトを指定します。 稼働監視コンポーネントを開始してから,Tomcatサーバプロセス初期化完了通知を受信するまでの時間(単位:ミリ秒)を指定します。0を指定した場合はタイムアウトしません。 |
0〜2147483647の整数で指定します。 |
可 |
60000 |
healthcheck.startdelay.timeout |
Tomcatサーバプロセス開始完了通知待ちタイムアウトを指定します。 Tomcatサーバプロセス初期化完了通知を受信してから,Tomcatサーバプロセス開始完了通知を受信するまでの時間(単位:ミリ秒)を指定します。0を指定した場合はタイムアウトしません。 |
0〜2147483647の整数で指定します。 |
可 |
60000 |
healthcheck.startdelay.actions.failure.usercommand.idrefs.<n> |
Tomcatサーバプロセス開始完了通知待ちタイムアウトが発生した場合に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.startdelay.actions.failure.retrymax |
Tomcatサーバプロセス開始完了通知待ちタイムアウトが発生した場合に,Tomcatサーバプロセス開始完了待ちをリトライする最大回数を指定します。 |
0〜2147483647の整数で指定します。 |
可 |
4 |
healthcheck.startdelay.actions.failure.snapshot |
Tomcatサーバプロセス開始完了待ちタイムアウトが発生した場合に,スナップショットログを収集するかどうかを指定します。
|
|
可 |
true |
healthcheck.startdelay.actions.afterretry.terminate |
Tomcatサーバプロセス開始完了待ちタイムアウトが発生した場合に,タイムアウトの回数がhealthcheck.startdelay.actions.failure.retrymaxで指定した最大リトライ回数を超えていたとき,Tomcatサーバプロセスを停止するかどうかを指定します。
|
|
可 |
true |
healthcheck.httprequest.enabled |
稼働監視コンポーネントからヘルスチェックリクエストを送信するかどうかを指定します。
|
|
可 |
true |
healthcheck.httprequest.check.default.interval |
稼働監視コンポーネントから送信するヘルスチェックリクエストの送信間隔(単位:ミリ秒)を指定します。 |
1〜2147483647の整数で指定します。 |
可 |
30000 |
healthcheck.httprequest.check.default.connecttimeout |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP接続タイムアウト時間(単位:ミリ秒)を指定します。 |
0〜2147483647の整数で指定します。 |
可 |
3000 |
healthcheck.httprequest.check.default.readtimeout |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP読み込みタイムアウト時間(単位:ミリ秒)を指定します。 |
0〜2147483647の整数で指定します。 |
可 |
10000 |
healthcheck.httprequest.actions.connectfailure.usercommand.idrefs.<n> |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP接続タイムアウトが発生した場合に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.httprequest.actions.connectfailure.snapshot |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP接続タイムアウトが発生した場合に,スナップショットログを収集するかどうかを指定します。
|
|
可 |
true |
healthcheck.httprequest.actions.connectfailure.terminate |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP接続タイムアウトが発生した場合に,Tomcatサーバプロセスを停止するかどうかを指定します。
|
|
可 |
false |
healthcheck.httprequest.actions.iofailure.usercommand.idrefs.<n> |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP読み込みタイムアウトが発生した場合に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.httprequest.actions.iofailure.snapshot |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP読み込みタイムアウトが発生した場合に,スナップショットログを収集するかどうかを指定します。
|
|
可 |
true |
healthcheck.httprequest.actions.iofailure.terminate |
稼働監視コンポーネントから送信するヘルスチェックリクエストのHTTP読み込みタイムアウトが発生した場合に,Tomcatサーバプロセスを停止するかどうかを指定します。
|
|
可 |
false |
healthcheck.httprequest.actions.errorresponse.usercommand.idrefs.<n> |
稼働監視コンポーネントから送信するヘルスチェックリクエストの結果,エラーレスポンスを受信した場合に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.httprequest.actions.errorresponse.snapshot |
稼働監視コンポーネントから送信するヘルスチェックリクエストの結果,エラーレスポンスを受信した場合に,スナップショットログを収集するかどうかを指定します。
|
|
可 |
true |
healthcheck.httprequest.actions.errorresponse.terminate |
稼働監視コンポーネントから送信するヘルスチェックリクエストの結果,エラーレスポンスを受信した場合に,Tomcatサーバプロセスを停止するかどうかを指定します。
|
|
可 |
false |
healthcheck.httprequest.actions.recovery.usercommand.idrefs.<n> |
稼働監視コンポーネントから送信するヘルスチェックリクエストで異常を検知したあとに,ヘルスチェックリクエストが成功した初回に実行する,ユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.stuckthread.enabled |
稼働監視コンポーネントがTomcatサーバプロセスからのリクエスト処理停滞通知を監視するかどうかを指定します。
|
|
可 |
false |
healthcheck.stuckthread.actions.failure.usercommand.idrefs.<n> |
稼働監視コンポーネントがTomcatサーバプロセスからのリクエスト処理停滞通知を検知した場合に実行する,ユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.stuckthread.actions.failure.snapshot |
稼働監視コンポーネントがTomcatサーバプロセスからのリクエスト処理停滞通知を検知した場合に,スナップショットログを収集するかどうかを指定します。
|
|
可 |
true |
healthcheck.stuckthread.actions.failure.terminate |
稼働監視コンポーネントがTomcatサーバプロセスからのリクエスト処理停滞通知を検知した場合に,Tomcatサーバプロセスを停止するかどうかを指定します。
|
|
可 |
false |
healthcheck.stuckthread.actions.recovery.usercommand.idrefs.<n> |
稼働監視コンポーネントがTomcatサーバプロセスからのリクエスト処理停滞通知を検知したあとに,停滞解消通知を受信した際に実行するユーザコマンド定義のID(<group-id>)を指定します。ユーザコマンド定義の指定方法はhealthcheck.usercommand.defs.<group-id>.commandキーの欄を参照してください。 |
healthcheck.usercommand.defsで始まるユーザコマンド定義のID(<group-id>) |
可 |
- |
healthcheck.usercommand.defs.<group-id>.command |
ユーザコマンド定義の実行コマンドを指定します。指定したコマンドはhealthcheck.usercommand.defs.<group-id>.args.<n>で指定したコマンド引数と共に,java.lang.ProcessBuilderで実行されます。コマンド実行時の作業ディレクトリはcommon.baseで指定したディレクトリです。 healthcheck.usercommand.defs.<group-id>から始まるプロパティを,可変値<group-id>の値でグループ化します。このプロパティは,<group-id>の値ごとに必須です。また,このプロパティキーに含まれる<group-id>の値は「ユーザコマンド定義のID」になります。 |
任意文字列 |
可 |
- |
healthcheck.usercommand.defs.<group-id>.args.<n> |
ユーザコマンド定義のコマンド引数を指定します。 healthcheck.usercommand.defs.<group-id>.commandで指定した実行コマンドに渡す,コマンド引数を指定します。<n>が連番ではない場合も間を空けず昇順でコマンド引数とします。 同じ<group-id>を持つhealthcheck.usercommand.defs.<group-id>.commandも指定する必要があります。 |
任意文字列 |
可 |
- |
healthcheck.usercommand.defs.<group-id>.stdout.file.path |
ユーザコマンドの標準出力をリダイレクトするファイルパスを絶対パスで指定します。指定がない場合は,Tomcatプロセスモニタの標準出力にリダイレクトします。 同じ<group-id>を持つhealthcheck.usercommand.defs.<group-id>.commandも指定する必要があります。 |
絶対パス |
可 |
- |
healthcheck.usercommand.defs.<group-id>.stderr.file.path |
ユーザコマンドの標準エラー出力をリダイレクトする絶対パスを指定します。指定がない場合は,Tomcatプロセスモニタの標準エラー出力にリダイレクトします。 同じ<group-id>を持つhealthcheck.usercommand.defs.<group-id>.commandも指定する必要があります。 |
絶対パス |
可 |
- |
healthcheck.usercommand.threadpoolsize |
ユーザコマンドの実行に使用する,稼働監視コンポーネントが管理するスレッドプールのサイズを指定します。 |
1〜1024の整数で指定します。 |
可 |
10 |
(4) スナップショットログ収集機能に関するプロパティ
スナップショットログ収集機能に関するプロパティを次に示します。
キー名称 |
内容 |
指定可能値 |
省略可否 |
デフォルト |
---|---|---|---|---|
snapshot.log.filepath |
スナップショットログの出力先ディレクトリとファイルプリフィックスを指定します。スナップショットログの出力パスは「<snapshot.log.filepathの指定値>_<yyyy-MM-dd_HH-mm-ss.SSS>_<n>.zip」です。
|
絶対パス |
可 |
${common.base}/snapshot |
snapshot.exclude.globs.<n> |
スナップショットログの収集対象外とするファイル名をglob形式で指定します。このプロパティに該当するファイルはsnapshot.include.paths.<n>に含まれていても収集されません。${CATALINA_BASE}/conf/tomcat-users.xmlは収集対象外のため,このプロパティによる設定は不要です。このプロパティ設定変更時はスナップショットログを手動で収集し,スナップショットログに意図したファイルが含まれるかどうかを確認してください。
|
glob形式で指定したファイル名 |
可 |
- |
snapshot.include.paths.<n> |
スナップショットログに追加で収集するディレクトリまたはファイルパスを指定します。snapshot.exclude.globs.<n>に含まれるファイルは収集されません。このプロパティ設定変更時はスナップショットログを手動で収集し,スナップショットログに意図したファイルが含まれるかどうかを確認してください。
|
絶対パス |
可 |
- |
snapshot.maskingrule.regexes.<n> |
スナップショットログに収集する際,マスキングするルールを正規表現で指定します。マッチした最初のグループを「*****」に置き換えます。この設定は次に示す収集対象に適用されます。
このプロパティの定義有無に関係なくpassword="(.+?)"が適用されます。このプロパティ設定変更時はスナップショットログを手動で収集し,スナップショットログ内のファイルが意図したマスキング結果になることを確認してください。
|
正規表現 |
可 |
- |
snapshot.onshutdownrequest.threaddumpnum |
シャットダウン要求時,Tomcatが稼働している場合にスレッドダンプを取得する回数を指定します。取得したスレッドダンプはシャットダウンの結果がsnapshot.onshutdownrequest.collect.conditionに該当する場合,スナップショットログとして出力されます。 Tomcatプロセスモニタが停止シグナルを受ける終了方式の場合,スレッドダンプが取得されます。それ以外の終了方式の場合,Tomcatプロセスモニタが取得を開始する前にTomcatが終了するため,スレッドダンプは取得されません。例えばシャットダウンポートによる終了が該当します。 0を指定した場合,取得しません。複数回を指定した場合,snapshot.default.threaddumpintervalの間隔で取得します。 |
0〜60の整数で指定します。 |
可 |
0 |
snapshot.onshutdownrequest.watchcommand.enabled |
シャットダウン要求時,Tomcatが稼働している場合にマシンリソースの使用状況を取得するかどうかを指定します。
|
|
可 |
false |
snapshot.onshutdownrequest.collect.condition |
Tomcatサーバプロセスの終了を検知したとき,自動的にスナップショットログを収集するTomcatサーバプロセス終了ステータスの条件を選択します。
|
|
可 |
ERROR |
snapshot.onhealthcheck.threaddumpnum |
稼働監視による障害検知時,Tomcatが稼働している場合にスレッドダンプを取得する回数を指定します。 0を指定した場合,取得しません。複数回を指定した場合,snapshot.default.threaddumpintervalの間隔で取得します。 |
0〜60の整数で指定します。 |
可 |
3 |
snapshot.onhealthcheck.watchcommand.enabled |
稼働監視による障害検知時,Tomcatが稼働している場合にマシンリソースの使用状況を取得するかどうかを指定します。
|
|
可 |
true |
snapshot.rest.default.threaddumpnum |
スナップショットログ収集REST API呼び出し時,スレッドダンプ取得回数オプションを省略した場合の取得回数を指定します。 0を指定した場合,取得しません。複数回を指定した場合,snapshot.default.threaddumpintervalの間隔で取得します。 |
0〜60の整数で指定します。 |
可 |
0 |
snapshot.rest.default.watchcommand.enabled |
スナップショットログ収集REST API呼び出し時,モニタリング情報取得オプションを省略した場合,マシンリソースの使用状況を取得するかどうかを指定します。
|
|
可 |
true |
snapshot.default.threaddumpinterval |
複数回スレッドダンプを取得する際,取得を完了してから次の取得を開始するまでの待機時間(単位:ミリ秒)を指定します。0を指定した場合,待機時間なしで連続してスレッドダンプを取得します。 |
0〜60000の整数で指定します。 |
可 |
1000 |
(5) トレース機能に関するプロパティ
トレース機能に関するプロパティを次に示します。
キー名称 |
内容 |
指定可能値 |
省略可否 |
デフォルト |
---|---|---|---|---|
tracer.enabled |
トレースを取得するかどうかを示す真偽値を指定します。
|
|
可 |
true |
tracer.queuesize |
トレースの非同期出力で使う待ちキューのサイズ(行単位)を示す数値を指定します。実行待ちキューのサイズに比例して,Javaヒープが消費されます。 |
1〜2147483647の整数で指定します。 |
可 |
16384 |
tracer.log.filepath |
出力先ディレクトリとログファイルプリフィックスを指定します。出力先のファイルパスは<tracer.log.filepathの指定値><ローテーション番号>.logになります。 |
絶対パス |
可 |
${common.base}/ucartrace |
tracer.log.filenum |
ログファイルのローテーション数を示す数値を示します。 |
1〜16の整数で指定します。 |
可 |
4 |
tracer.log.filesize |
1つのログファイルに書き込むおおよその最大量(単位:バイト)を示す数値を指定します。「おおよそ」とは,行の途中でファイルをローテーションさせないため,超過することがあることを意味します。 |
1〜2147483647の整数で指定します。 |
可 |
33554432 |
tracer.log.level |
ログ取得レベル(SEVERE,WARNING,INFO,CONFIG,FINE,FINER,FINEST,ALLのどれか)を示す文字列を指定します。各レベルの重要度はjava.util.logging.Levelに定義されているとおりです。 詳細は,「12.2.5 ログ取得レベル」を参照してください。 |
|
可 |
FINE |