この章では,システム資源がどのように使用されているかを調べる方法を説明します。
この情報は,次のことに役立てることができます。
-
各ユーザに対するシステム使用料の請求。
個々のユーザが使用した資源のレポートを作成することができる。
-
将来必要となる機器の検討。
資源の使用パターンの変化が分かり,将来どの資源が必要になるかを予測することができる。
-
システムのトラブルシューティング。
各プロセスが最後に終了したときの終了状態をチェックすることができる。
-
システムの性能の改善。
個々のイメージおよびプロセスがシステムにどのくらいの負荷を与えているか調べることができる。
-
機密保護を侵害するような動きの検出。
資源の使用パターンがどのようなときに通常でないかを識別することができる。
この章の内容
この章では,次の作業を説明します。
さらに,次の項目について説明します。
システムは,特定の資源の使用量に関する情報を収集し,会計情報ファイルと呼ばれるファイルに記録します。
このような情報の代表的なものに,各プリント・ジョブによって使用される CPU 時間があります。
省略時の設定において,情報収集の対象となる資源は,使用するコンピュータのモデルによって異なります。
システム管理者は,どの資源の情報を収集するか制御することができます。
たとえば,資源の使用量を調査する必要がない場合は,会計情報ファイルへの記録を停止することもできます (7.3 項 「調査対象の資源の制御」を参照)。
会計情報ファイルは OpenVMS Cluster 内の各ノードに存在します。
各ノードの情報を記録しているファイルを,そのノードの現在の会計情報ファイルといいます。
省略時の会計情報ファイルは SYS$MANAGER:ACCOUNTNG.DAT ですが,必要に応じて変更することもできます (7.5 項 「会計情報ファイルの移動」を参照)。
会計情報ファイルには情報がバイナリ形式で記録されます。
したがって,TYPE コマンドでこのファイルの内容を表示することはできません。
内容を表示する場合は,ACCOUNTING ユーティリティを使用します (7.6 項 「資源の使用量を示すレポートの作成」を参照)。
現在,情報を収集している資源を決定する場合には,SHOW ACCOUNTING コマンドを使用します。
このコマンドは,次の 2 つのカテゴリについて,そのキーワードを表示します。
-
調査対象となっている資源の種類を示すキーワード。
キーワード | 資源の種類 |
---|
IMAGE | イメージによって使用される資源 |
LOGIN_FAILURE | ログインに失敗した場合に使用される資源 |
MESSAGE | $SNDJBC システム・サービスの呼び出しによって会計情報ファイルに記録される書式化されていない資源レコード |
PRINT | プリント・ジョブによって使用される資源 |
PROCESS | プロセスによって使用される資源 |
-
調査対象となっているプロセスの種類を示すキーワード。
プロセスあるいはイメージのための資源が記録されている場合,これらのキーワードはプロセスの種類を示す。
キーワード | プロセス |
---|
BATCH | バッチ・プロセス |
DETACHED | 独立プロセス |
INTERACTIVE | 会話型プロセス |
NETWORK | ネットワーク・プロセス |
SUBPROCESS | サブプロセス (親プロセスはバッチ,独立,会話型,ネットワークのいずれの場合もある。) |
例
$ SHOW ACCOUNTING
Accounting is currently enabled to log the following activities:
PROCESS any process termination
IMAGE image execution
INTERACTIVE interactive job termination
LOGIN_FAILURE login failures
NETWORK network job termination
PRINT all print jobs
|
この例のキーワードから,ローカル・ノードでは次の資源が調査対象になっていることが分かります。
-
会話型プロセスおよびネットワーク・プロセスによって使用される資源。
-
会話型プロセスおよびネットワーク・プロセスで動作しているイメージによって使用される資源。
-
-
システム管理者は,会計情報ファイルにどの資源の情報を記録するかを制御することができます。
調べる必要がない資源の記録を停止すれば,ディスク空間の使用量を減らすこともできます。
作業方法
-
調査対象にする資源を一時的に制御する場合は,SET ACCOUNTING コマンドで修飾子 /ENABLE または /DISABLE を次の形式で使用する。
SET ACCOUNTING/DISABLE[=(キーワード[,...])] /ENABLE[=(キーワード[,...])]
キーワードは,7.2 項 「調査対象の資源の決定」で説明したものと同じ。
-
調査対象にする資源を変更したい場合 (すなわち,リブート後も同じ設定を使用したい場合) は,スタートアップ・ファイル SYS$MANAGER:SYSTART_VMS.COM にある SET ACCOUNTING の記述を変更する。
例
会話型プロセスおよびバッチ・プロセスによって使用されるものを除くすべての資源の記録を停止する場合は,次のコマンドを使用します。
$ SET ACCOUNTING/DISABLE/ENABLE=(PROCESS,INTERACTIVE,BATCH)
|
/DISABLE 修飾子の後ろにはキーワードが付いていません。
したがって,この修飾子によりすべての資源の記録が停止されます。
次の /ENABLE 修飾子により,会話型プロセスおよびバッチ・プロセスによって使用される資源の記録が開始されます。
会計情報ファイルを更新する場合は,次のコマンドを使用します。
$ SET ACCOUNTING/NEW_FILE
|
このコマンドにより,現在の会計情報ファイルがクローズし,新しいバージョンがオープンします。
現在の会計情報ファイルに書き込みを行おうとするときにエラーが検出されると,会計情報ファイルは自動的にクローズし,新しいバージョンがオープンします。
例
現在の会計情報ファイルをクローズして新しいバージョンをオープンし,さらに古いファイルの名前をWEEK_24_RESOURCES.DAT に変更します。
古いファイルはその週に使用された資源の記録として使用することができます。
$ SET ACCOUNTING/NEW_FILE
$ RENAME SYS$MANAGER:ACCOUNTNG.DAT;-1 WEEK_24_RESOURCES.DAT
|
システムを初めてインストールした場合,現在の会計情報ファイルは SYS$MANAGER:ACCOUNTNG.DAT となります。
このファイルは非常に大きくなるため,システムの性能が低下しないように,適切な時期にシステム・ディスクから移動することが大切です。
作業方法
-
システム論理名テーブルにある ACCOUNTNG という論理名で使用するファイルを定義する。
たとえば,次のようにする。
$ DEFINE ACCOUNTNG MYDISK:MYFILE.DAT/SYSTEM
|
デバイスおよびディレクトリを含む完全ファイル指定を使用する。
-
リブート後も同じ定義を継続したい場合は,この定義を SYS$MANAGER:SYLOGICALS.COM ファイルに追加する。
-
SET ACCOUNTING コマンドに /NEW_FILE を指定して,新しいファイルを準備する。
$ SET ACCOUNTING/NEW_FILE
|
例
現在の会計情報ファイルを MYDISK:MYFILE.DAT に変更する場合は,次のようにします。
$ DEFINE ACCOUNTNG MYDISK:MYFILE.DAT/SYSTEM
$ SET ACCOUNTING/NEW_FILE
|
レポートには次の 3 種類があります。
レポートの種類 | 使用する修飾子 |
---|
簡略レポート | /BRIEF (省略時の設定) |
詳細レポート | /FULL |
要約レポート | /SUMMARY |
レポートを作成する場合,ACCOUNTING コマンドに該当する修飾子を指定します。
ACCOUNTING [ファイル指定[,...]/修飾子[,...]]
このコマンドにより,ACCOUNTING ユーティリティが実行されます。
パラメータの ファイル指定には,処理したい会計情報ファイルを指定します。
複数のファイルを指定する場合は,それぞれをコンマで区切ります。
このパラメータを省略すると,省略時の現在の会計情報ファイル SYS$MANAGER:ACCOUNTNG.DAT が処理されます。
省略時の設定では,指定した会計情報ファイルの中のすべてのレコードが処理されますが,修飾子を使用して処理対象のレコードを指定することもできます。
省略時の設定では,簡略レポートおよび詳細レポートのレコードの順序は,会計情報ファイルに記録された順序になります。
簡略レポートおよび省略レポートでは,レコードの順序を変更することもできます。
その場合は,/SORT 修飾子を使用します。
例
論理名 ACCOUNTNG によって指定されるファイル内の情報の簡略レポートを生成する例です。
/TYPE 修飾子によって,処理対象のレコードをプリント・ジョブに関するものに限定しています。
また,/SORT 修飾子は,ユーザ名のアルファベットの逆の順序に従って各レコードを並べます。
$ ACCOUNTING ACCOUNTNG/TYPE=PRINT/SORT=USER
Date / Time Type Subtype Username ID Source Status
-----------------------------------------------------------------------
13-APR-2000 13:36:04 PRINT SYSTEM 20A00442 00000001
13-APR-2000 12:42:37 PRINT JONES 20A00443 00000001
13-APR-2000 14:43:56 PRINT FISH 20A00456 00000001
14-APR-2000 19:39:01 PRINT FISH 20A00265 00000001
14-APR-2000 20:09:03 PRINT EDWARDS 20A00127 00000001
14-APR-2000 20:34:45 PRINT DARNELL 20A00121 00000001
14-APR-2000 11:23:34 PRINT CLARK 20A0032E 00040001
14-APR-2000 16:43:16 PRINT BIRD 20A00070 00040001
14-APR-2000 09:30:21 PRINT ANDERS 20A00530 00040001
|
各ユーザは,登録時に UIC セキュリティ・グループのいずれかに所属するようになっています。
多くの場合,セキュリティ・グループを会計の目的で使用するのは適切ではありません。
ACCOUNTING ユーティリティの /ACCOUNT 修飾子を使用すれば,システムに登録されているユーザをいくつかの会計グループに分けることができます。
ACCOUNTING ユーティリティを使用すれば,次のことができます。
-
特定の会計グループまたはセキュリティ・グループに属するすべてのユーザの資源使用量をまとめる。
会計グループによってまとめるときは /ACCOUNT 修飾子,セキュリティ・グループによってまとめるときは /UIC 修飾子を使用する。
-
特定の会計グループまたはセキュリティ・グループに属するすべてのユーザのレコードを選択する。
会計グループによって選択するときは /ACCOUNT 修飾子,セキュリティ・グループによって選択するときは /UIC 修飾子を使用する。
作業方法
-
会計グループの構成を考える。
どのような会計グループを使用するか,各ユーザをどの会計グループに所属させるか,各グループの名前をどのようにするかを決める。
会計グループの名前は最大 8 文字。
-
UAF の会計情報フィールドの値を変更する。
AUTHORIZE ユーティリティの MODIFY コマンドを使用して,各ユーザの会計情報フィールドの値をそのユーザが所属する会計グループの名前に変更する。
MODIFY ユーザ名/ACCOUNT=会計グループ名
ユーザ名 | ユーザの名前 |
会計グループ名 | そのユーザを所属させたい会計グループの名前 |
該当する会計情報フィールドが変更されたユーザは,次回のログインから新しい会計グループに所属します。
そのユーザが使用した資源が記録されるときには,該当する会計グループ名が同時に記録されるようになります。
例
FORD というユーザの会計グループ名をSALES_W8 に変更する場合は,次のコマンドを実行します。
$ RUN SYS$SYSTEM:AUTHORIZE
UAF> MODIFY FORD/ACCOUNT=SALES_W8
UAF> EXIT
|
あるユーザが使用しているディスク空間の量を調べる場合は,SYSMAN コマンドを使用します。
また,ディスク・クォータを有効にしていない場合には,DIRECTORY コマンドを使用します。
作業方法
次のいずれかの方法を使用します。
-
次の形式で,SYSMAN の DISKQUOTA SHOW コマンドを使用する。
DISKQUOTA SHOW 所有者 [/DEVICE=デバイス指定]
指定したユーザが指定したディスク上で所有している全ファイルの使用ブロック数が示される。
-
次の形式で,DIRECTORY コマンドに /SIZE 修飾子と /GRAND_TOTAL 修飾子を指定する。
DIRECTORY [ファイル指定[,...]]/SIZE=ALLOCATION/GRAND_TOTAL
指定したディレクトリにある全ファイルにより使用されているブロック数が示される。
なお,DIRECTORY コマンドには,ファイルのヘッダやユーザのルート・ディレクトリで使用されているブロックは含まれない。
例
-
次の例では,SYSMAN を使用して各ユーザが所有している全ファイルの使用ブロック数を調べる。
$ RUN SYS$SYSTEM:SYSMAN
SYSMAN> DISKQUOTA SHOW *
%SYSMAN-I-QUOTA, disk quota statistics on device SYS$SYSTEM:MYDISK
Node UNION
UIC Usage Permanent Quota Overdraft Limit
[0,0] 0 1000 100
[DOC,EDWARDS] 115354 150000 5000
[DOC,FISH] 177988 250000 5000
[DOC,SMITH] 140051 175000 5000
[DOC,JONES] 263056 300000 5000
|
-
次の例では,DIRECTORY コマンドを使用して,MYDISK:[PARSONS] およびその下のディレクトリにある全ファイルの使用ブロック数を表示する。
$ DIRECTORY MYDISK:[PARSONS...]/SIZE=ALLOCATION/GRAND_TOTAL
Grand total of 28 directories, 2546 files, 113565 blocks.
|