2.4 Java Service Managerコンソール
各Java Service Managerのインスタンスには、HTTP Webコンソールのインターフェースがあります。このコンソールを使用すると、Webブラウザーやスタジオ・アプリケーションで現在アクティブなサービス・マネージャーの管理タスクを実行できます。
以下のmanager.propertiesエントリーで、コンソールのアドレスとポートを制御します。コンソールのインターフェースが必要ない場合は、manager.propertiesファイル内の該当エントリーのコメントを外します。
console.tcp.port=4561
console.tcp.backlog=5
console.tcp.interface=*all
どのクライアントがコンソール・サーバーに接続するかを制御するには、以下のエントリーを使用します。
console.client.address=*all
studio.client.address=*all
Webブラウザーからコンソールにアクセスするには、http://host:port のURLを使用します。
[活動中のサービス数]コマンドにより、現在実行中のサービス・スレッド数が返されます。
[リソースの更新]コマンドは、サービス・マネージャーに対してmanager.properties、service.properties、structure.properties、list.propertiesの各ファイルをリロードするように指示します。
[システム情報]コマンドにより、サービス・マネージャー環境に関する情報の表が返されます。
[ガベージコレクションを実行]コマンドは、サービス・マネージャーに対してJVMガベージ・コレクション・サイクルを実行するように指示します。
[シャットダウン]コマンドは、サービス・マネージャーに対してJSMクライアントの新しい接続を受け入れないように指示します。現在実行中のサービス・スレッドに影響はありません。これ以上サービス・スレッドを実行しない場合や停止待機時間に達した場合は、サービス・マネージャーが終了します。
[コンソール・サーバーを終了]コマンドにより、コンソール・リスナーが終了するため、コンソールとスタジオのこれ以上の接続は行われません。
JSMインスタンスを開始して、コンソール・インターフェースが有効になると、開始エントリーがconsole-log.txtファイルに追加されます。
Webブラウザーまたはスタジオ・アプリケーションがコンソールのサーバー・スレッドに要求を送信すると、この要求はシステム・ディレクトリのconsole-log.txtファイルに書き込まれます。
console-log.txtエントリーは、日時スタンプ、クライアント・プログラムのIPアドレス、および要求で構成されます。このエントリーにより、Java Service Managerコンソールで行われるすべての要求の監査ログが提供されます。
例
[2005-02-03 01:57:56 +0000] =======================================================
[2005-02-03 01:58:50 +0000] [10.2.1.55] Request for download [/jsm/instance/order.txt; ]
[2005-02-03 01:58:55 +0000] [10.2.1.55] Request for thread count
[2005-02-03 01:59:01 +0000] [10.2.1.55] Request for refresh
Javaのuser.timezoneプロパティが個別に設定されている場合、console.timezoneプロパティを使用してGMTをローカル時間に適用させることができます。
# GMT+10:00などのカスタム・タイム・ゾーンにサマータイムは含まれない
# console.timezone=GMT+10:00
# console.timezone=Australia/Sydney
console.timezone=AET
console.authenticationプロパティは、クライアントWebブラウザーで基本認証を制御します。console.authenticationプロパティの値が*yesの場合、クライアント認証が行われます。
# console.authenticationのコメントを外す場合、認証は行われない
console.authentication=*yes
console.authentication.alick=6aae268520b50b6b4c28194631de5a24
コンソール認証を有効にすると、クライアントWebブラウザーには認証ダイアログ・ボックスのプロンプトが表示されます。
プロパティconsole.authentication.{username}に対してmanager.propertiesのキャッシュ検索が行われ、そのプロパティ値は、Webブラウザーの認証応答から作成されたダイジェスト・トークンと比較されます。
ユーザー・エントリーが存在しない場合は、以下のログが記録されます。
[2005-04-01 03:04:37 +0000] No console authentication user :jack
ユーザー・エントリーが存在したとしてもダイジェストが一致しない場合は、以下のログが記録されます。
[2005-04-01 03:02:31 +0000] Console authentication digest for alick is 6aae268520b50b6b4c28194631de5a24
[2005-04-01 03:02:31 +0000] Client user has failed authentication check
ログが記録されたダイジェストがクライアント・アプリケーションによって作成されたため、次のログインで一致するようにこのダイジェストでmanager.propertiesエントリーを更新します。
console.authentication.alick=6aae268520b50b6b4c28194631de5a24
ユーザーが認証される場合、ログ・イベントにはユーザー名が含まれます。
[2005-04-01 03:02:47 +0000] [10.2.1.55] [alick] GET /REQUEST-SYSTEM-REFRESH
console.client.addressを使用して、どのWebブラウザー・クライアントのアドレスが接続できるかを制御できます。2つ以上のクライアント・アドレスが必要な場合、その複数のアドレスをコンマで区切ります。
console.client.address=*all
# console.client.address=10.2.1.7
# console.client.address=10.2.1.7,10.2.1.8
studio.authenticationプロパティは、クライアント・スタジオ・アプリケーションで認証を制御します。studio.authenticationプロパティの値が*yesの場合、クライアント認証が行われます。
# studio.authenticationのコメントを外す場合、認証は行われない
studio.authentication=*yes
studio.authentication.alick=tpUq/4Pn5A64fVZyQ0gOJ8ZWqkY=
スタジオ認証を有効にすると、クライアント・スタジオ・アプリケーションには認証ダイアログ・ボックスのプロンプトが表示されます。
プロパティstudio.authentication.{username}に対してmanager.propertiesのキャッシュ検索が行われ、そのプロパティ値は、クライアント・スタジオ・アプリケーションから送信されたダイジェスト・トークンと比較されます。
ユーザー・エントリーが存在しない場合は、以下のログが記録されます。
[2005-04-01 03:04:37 +0000] No studio authentication user :jack
ユーザー・エントリーが存在したとしてもダイジェストが一致しない場合は、以下のログが記録されます。
[2005-04-01 03:02:31 +0000] Studio authentication digest for alick is 6aae268520b50b6b4c28194631de5a24
[2005-04-01 03:02:31 +0000] Client user has failed authentication check
スタジオを使用して認可ユーザーを作成し、このユーザーをmanager.propertiesセクション・ファイルに追加します。 コンソールとスタジオのユーザーはJSMレルムに属します。
studio.authentication.alick=6aae268520b50b6b4c28194631de5a24
console.authentication.alick=6aae268520b50b6b4c28194631de5a24
修正されたmanager.propertiesセクション・ファイルを発行し、インスタンスの更新メニュー項目を使用してmanager.propertiesファイルをリロードします。
ユーザーが認証される場合、ログ・イベントにはユーザー名が含まれます。
[2005-04-01 03:03:23 +0000] [10.2.1.55] [alick] Request for download [/devjsm/instance/rehau1.xml;]
studio.client.addressを使用して、どのスタジオ・クライアントのアドレスが接続できるかを制御できます。2つ以上のクライアント・アドレスが必要な場合、その複数のアドレスをコンマで区切ります。
studio.client.address=*all
# studio.client.address=10.2.1.7
# studio.client.address=10.2.1.7,10.2.1.8
studio.include.trace.directoryを使用して、スタジオ・クライアントに送信されるトレース・ディレクトリの深さを制御できます。省略値では、トレース・ディレクトリ内のすべての子ディレクトリが送信されます。
# studio.include.trace.directory=*all | *active | *none | *client