[ 前のページ ]
[ 次のページ ]
[ 目次 ]
[ 索引 ]
[ DOC Home ]
本章では,システム・ログ・ファイルの設定と管理,エラー・ログ・ファイルの管理, およびシステム管理ユーティリティを使ったシステムの監視について説明します。
本章では,次の作業を説明します。
作業 | 参照箇所 |
---|---|
エラー・フォーマッタ(ERRFMT)の使用方法 | 第18.3節 |
エラー・ログ・ユーティリティ(ERROR LOG)を使ったレポート作成方法 | 第18.4 節 |
DECeventを使ったシステム・ イベント報告方法 | 第18.5節 |
オペレータ・ログ・ ファイルの設定,管理,プリント | 第18.6節 |
機密保護監査機能の使用法 | 第18.7節 |
MONITORユーティリティを使用したシステムの性能の監視 | 第18.8節 |
さらに,次の項目について説明します。
項目 | 参照箇所 |
---|---|
システム・ログ・ファイル | 第18.1節 |
エラー・ログ機構 | 第18.2節 |
エラー・ログ・ユーティリティ(ERROR LOG) | 第18.4.1項 |
DECeventイベント管理ユーティリティ | 第18.5.1項 |
オペレータ・ログ・ファイル | 第18.6.1項 |
OPCOMメッセージ | 第18.6.2項 |
機密保護監査機構 | 第18.7.1 項 |
Monitorユーティリティ | 第18.8.1項 |
システム管理を行う場合,システム・イベントに関する情報を収集して検討することが必要になります。OpenVMS オペレーティング・システムでは, システム資源の使用状況,エラー状態,他のシステム・イベントの情報を記録するログ・ ファイルがいくつか提供されます。これらのログ・ ファイルについて表 18-1で簡単にまとめます。
ログ・ファイル | 説明 | 参照箇所 |
---|---|---|
エラー・ログ・ファイル | このファイルには,装置およびCPUに関するエラー・ メッセージが自動的に記録される。 | 第18.2節 |
オペレータ・ログ・ファイル | このファイルには, オペレータ通信マネージャ(OPCOM)によって,システム・ イベントが記録される。 | 第2 章, 第18.6節 |
会計情報ファイル | このファイルには, システム資源の使用状況が記録される。 | 第19章 |
機密保護監査ログ・ ファイル | 監査サーバ・ プロセスにより,機密保護関係のシステム・イベントが書き込まれる。 | 第18.7 節 |
エラー・ログ機構は,自動的にエラー・メッセージを最新バージョンのエラー・ ログ・ファイルSYS$ERRORLOG:ERRLOG.SYSに書き込みます。エラー・ ログ・レポートは,主に,弊社のサポート担当者がハードウェアの問題箇所を特定するときに使用するものです。 また,システム管理者でも, あるシステム障害が頻繁に発生する場合には,それが注意を要するものであるかどうか, エラー・ログ・レポートから判断することができます。
バージョン7.2以降のOpenVMSでは,エラー・ログ・ファイルの解析にDECevent バージョン2.9以降が必要になりました。DECeventバージョン2.9 は,DECeventキットの中に,独立したユーティリティであるBinary Error Log Translationユーティリティを提供しています。このユーティリティは, 新しいCommon Event Header (CEH)バイナリ・エラー・ログ・ファイルを,DECevent の以前のバージョンや古いError Logユーティリティからも読み込み可能なヘッダ形式と構造のバイナリ・ エラー・ログ・ファイルに変換します。
Binary Error Log Translationユーティリティの詳細については, OpenVMSキットと共に出荷されているDECeventキットに含まれているマニュアルを参照してください。
エラー・ログ機構は,表 18-2に示す3つの部分から構成されます。
構成要素 | 説明 |
---|---|
エグゼクティブ・ ルーチン | エラーおよびイベントを検出し, 関連する情報をメモリ内のエラー・ログ・バッファに書き込む。 |
エラー・フォーマッタ (ERRFMT) | ERRFMTプロセスは,システムのブート時に起動し,
定期的にエラー・ログ・バッファを空にするとともに,エラーの記述を標準形式に変形し,
書式化した情報をシステム・ディスク上のエラー・
ログ・ファイルに格納する(第18.3.2項を参照)
。
エラー・フォーマッタを使えば,ERRFMTプロセスが回復不可能なエラーに遭遇してプロセス自身を削除する場合に, SYSTEM アカウントや他のユーザにメール送ることができる( 第18.3.3項を参照) 。 |
エラー・ログ・ ユーティリティ (ERROR LOG) | エラー・ログ・ファイルの内容を選択して報告する エラー・ログ・レポート・フォーマッタ(ERF)を呼び出す。ERROR LOG を呼び出すには,DCLのANALYZE/ERROR_LOGを入力する(第18.4.2項を参照)。 |
DECevent | イベント・ログ・ファイルの内容を選択して報告する。 DECeventを呼び出すには,DCLのDIAGNOSEコマンドを入力する( 第18.5節を参照)。バージョン2.9 以降のDECeventには,Binary Error Log Translationユーティリティが含まれている。 |
エグゼクティブ・ルーチンとエラー・フォーマッタ(ERRFMT)プロセスは継続的に稼動します。 途中,ユーザと対話することはありません。 エグゼクティブ・ルーチンは,エラーやイベントを検出すると,そのままの形でメモリ上のエラー・ ログ・バッファに格納します。エラー・ ログ・バッファの1つがいっぱいになるか,または,あらかじめ設定された時間が経過すると,ERRFMT は自動的にエラー・ログ・バッファをSYS$ERRORLOG:ERRLOG.SYS に書き込みます。
しかし,エラーが瞬時に大量に発生し,ERRFMTプロセスがエラー・ログ・ バッファを空にする前に,エラー・ログ・バッファがあふれてしまうこともあります。 この状態を発見するためには,エラー・ログ・レポートを読んで, レコード番号の途中に抜けた箇所がないかどうか調べます。ERRFMT プロセスがエラー・ログ・バッファ空間を開放すると,ただちに,エラー・ ログは再開されます。
エラーが多すぎてエラー・ログ・ファイルに書き込めなくなると,ERRFMT プロセスは,システム・コンソール・ターミナルにエラー・メッセージを表示し, 自分で実行を停止します。ERRFMTプロセスを再開する方法については, 第18.3.1項を参照してください。
エラー・ログ・フォーマッタ(ERRFMT)プロセスは,ブート時に自動的に起動されます。 次に各作業の実行方法と参照箇所を示します。
作業項目 | 参照箇所 |
---|---|
ERRFMTプロセスの再起動(必要な場合) | 第18.3.1項 |
エラー・ ログ・ファイルの管理 | 第18.3.2 項 |
ERRFMTプロセスが削除されたときのメールの送信 | 第18.3.3 項 |
ERRFMTプロセスを再起動するためには,次の手順に従ってください。
$ @SYS$SYSTEM:STARTUP ERRFMT
エラー・ログ・ファイルSYS$ERRORLOG:ERRLOG.SYSは共用ファイルのため,ANALYZE/ERROR_LOG ユーティリティがそのファイルの既存のエラー・ ログ・エントリを読み込んだり抽出したりしている間にも,ERRFMTプロセスは新しいエントリを書き込みます。
ERRLOG.SYSは,システム管理者が明示的にリネームするか削除するまで大きくなっていきます。 したがって,エラー・ログ・ファイルは定期的に整理する必要があります。1 つの方法として,1日1回ERRLOG.SYSをリネームします。 そうすると,新しいエラー・ログ・ファイルが自動的に作成されます。 たとえば,毎朝9時にERRLOG.SYSをERROLOG.OLDにリネームします。 リネームした古いエラー・ログ・ファイルは別のボリュームに移すか,システム・ ディスクから削除すれば,システム・ディスクの空間が解放されます。
また,論理名SYS$ERRORLOGをエラー・ログ・ファイルを格納したい装置とディレクトリに定義することにより, システム・ディスク以外のディスク上にエラー・ ログ・ファイルを格納する方法もあります。次に例を示します。
$ DEFINE/SYSTEM/EXECUTIVE SYS$ERRORLOG DUA2:[ERRORLOG]
システムを起動するたびにこの論理名を定義する場合は,論理名定義をSYLOGICALS.COM プロシージャに追加します。詳細は第5.2.5項を参照してください。
このとき,誤って使用中のエラー・ログ・ファイルを削除しないように注意してください。 また,リネームするときに,ファイル名の先頭あるいは最後に日付を付けて整理する方法もあります。
エラー・フォーマッタ(ERRFMT)を使用すれば,ERRFMTプロセスが回復不可能なエラーを検出し, プロセス自身を削除するときに,システム管理者や他の指定したユーザにメールを送ることができます。
2つのシステム論理名ERRFMT$_SEND_MAILおよびERRFMT$_SEND_TOが,この機能を制御します。
メールの送信を可能にするには,文字列TRUE (大文字と小文字の区別なし) を指定する。他の値では,メールの送信はできない。
ユーザ名を指定する(現在の省略時の値はSYSTEM)。
配布リストおよび複数のユーザ名はなるべく使用しないこと。
上記の論理名を定義するには,次のいずれかを行います。
変更後,ERRFMTを停止し再起動しなければ,変更は有効にならない。
定義した論理名は,次回システムを再ブートしたときから有効となる。 これ以降の説明では,この方法を使用する。
ERRFMT$_SEND_MAILがTRUEと定義されている場合,ユーザは,ERRFMTがプロセス自身を削除するという表題のメール・ メッセージを受信します。オペレータ・ ログ・ファイルおよびシステム・コンソールOPA0:には,発生した障害についての詳細な情報, およびERRFMTを再起動するための指示が出力されます。 しかし,ユーザはコンソールにいないこともあるので,この情報を見ないかもしれません。
たとえば,メールの送信が可能なモードでERRFMTを使用している場合,メールの送信を禁止にするには, システム管理者のアカウントを使って, SYS$STARTUP:SYLOGICAL.COMを編集し,次のコマンドを追加します。
$ DEFINE/SYSTEM ERRFMT$_SEND_MAIL FALSE
もう一度,メールの送信を可能にするには,システム管理者のアカウントを使って,SYS$STARTUP:SYLOGICAL.COM を編集し,次のコマンドを追加します。
$ DEFINE/SYSTEM ERRFMT$_SEND_MAIL TRUE
省略時の設定では,メールはSYSTEMアカウントに送信されます。しかし, ERRFMT$_SEND_TOを定義すれば,ERRFMTが自分自身を削除するときに,メールを他のユーザに送信することもできます。
メールを受信するユーザ名を変更するには,システム管理者のアカウントを使って,SYS$STARTUP:SYLOGICAL.COM を編集し,適切な論理名を定義するDEFINE コマンドを追加します。次に例を示します。
$ DEFINE/SYSTEM ERRFMT$_SEND_TO R_SMITH
配布リストおよび複数ユーザ名はなるべく使用しないでください。
エラー・ログ・ユーティリティ(ERROR LOG)を使用すれば,エラー・ログ・ ファイルの内容を選択して報告することができます。ERROR LOGを実行するには,SYSPRV 特権が必要です。バージョン7.2以降のOpenVMS では,Error Logユーティリティを使用する前に,Binary Error Log Translationユーティリティを使用してエラー・ログ・ファイルを変換する必要があります。Binary Error Log Translation ユーティリティはDECevent の一部です。詳細については,DECeventキットに含まれているマニュアルを参照してください。
ERROR LOGは,OpenVMSがサポートするほとんどのハードウェア,つまり, アダプタ,ディスク,テープ,CPU,およびメモリをサポートします。しかし, 通信装置の中には,サポートしないものもあります。いくつかの同期通信装置はサポートされます。
オペレーティング・システムは,表 18-3 に示すイベントが発生すると,自動的にメッセージを最新のバージョンのエラー・ ログ・ファイルSYS$ERRORLOG:ERRLOG.SYSに書き込みます。
イベント | 説明 |
---|---|
エラー | 装置エラー,装置タイムアウト,マシン・チェック, バス・エラー,メモリ・エラー(ハードまたはソフト・エラー修正コード[ECC] エラー),非同期書き込みエラー,および未定義の割り込み |
ボリュームの変更 | ボリュームのマウントおよびディスマウント |
システム・ イベント | システム起動,$SNDERR (エラー・ロガーへのメッセージの送信) システム・サービスからのメッセージ,およびタイム・ スタンプ |
ERROR LOGを使用すれば,エラー・ログ・エントリを,次のオプションの出力形式で報告することができます。
エラー・ログ・レポートの作成方法については,第18.4.2項を参照してください。 エラー・ログ・レポートの例については, 『OpenVMSシステム管理ユーティリティ・ リファレンス・マニュアル』を参照してください。
ERROR LOGが作成するエラー・レポートには,次の2つの用途があります。
レポートの内容の詳細は,弊社のサポート担当者にとって最も重要なものです。 一方,ユーザもこのレポートをシステム信頼性の重要な尺度として使用することができます。 たとえば,DCLのSHOW ERRORコマンドを使用して, 特定の装置が通常より多くのエラーを生成していることを見つけたとします。 このときERROR LOGを使用すれば,より詳細なレポートを入手し, 弊社のサポート担当者に問い合わせるかどうかを決定することができます。
システム・コンポーネントの障害の場合,弊社のサポート担当者は,障害直前から障害までのシステム実行状態のレポートを検討することができます。 たとえば,装置の障害の場合,次のようなレポートを作成することができます。
これらのレポートに基づいて,弊社のサポート担当者は,適切な診断プログラムを実行し, 障害が発生した装置を徹底的に分析することができます。 エラー・ログと診断情報を組み合わせることによって,その装置を修復することができます。
エラー・レポートによって,潜在的な障害を予期することができます。エラー・ ログ・ユーティリティと診断プログラムを組み合わせて効率的に使用することで, システム・ダウンの時間を大幅に短縮することができます。
レポートを作成するためには,DCLコマンドを次の形式で入力します。
ANALYZE/ERROR_LOG [/修飾子[,...]][ファイル指定[,...]]
修飾子 | ANALYZE/ERROR_LOGコマンドに実行させる機能( 修飾子)を指定する。 |
ファイル指定 | エラー・ログ・レポートで解釈する情報を含む, 1 つまたは複数のファイルを指定する。 |
このコマンドとパラメータについての詳細,およびエラー・ログ・レポートの例については, 『OpenVMSシステム管理ユーティリティ・ リファレンス・マニュアル』を参照してください。
不正なエラー・ログ・エントリを検出すると,ANALYZE_ERROR LOGユーティリティはエラー・ メッセージを出力します。これらのメッセージについては, 『OpenVMS System Messages and Recovery Procedures Reference Manual』を参照してください。 各エラー・メッセージについての説明と,その一般的な対処法が示されています。
ここでは,エラー・ログ・ファイルに含まれるすべてのエントリについてのエラー・ ログ・レポートを生成して,プリントする方法を示します。
$ SET PROCESS/PRIVILEGE=SYSPRV
$ SET DEFAULT SYS$ERRORLOG
$ DIRECTORY
$ ANALYZE/ERROR_LOG/OUTPUT=ERRORS.LIS
$ PRINT ERRORS.LIS
$ SET PROCESS/PRIVILEGE=SYSPRV $ SET DEFAULT SYS$ERRORLOG $ DIRECTORY 【1】 Directory SYS$SYSROOT:[SYSERR] ERRLOG.OLD;2 ERRLOG.OLD;1 ERRLOG.SYS;1 Total of 3 files. $ ANALYZE/ERROR_LOG/OUTPUT=ERRORS.LIS ERRLOG.OLD 【2】 $ PRINT ERRORS.LIS 【3】
この例では,次の操作を実行します。
エラー・ログ・レポートを作成する場合,前の項で説明した方法以外にもいくつかのオプション機能が用意されています。
表 18-4は,エラー・ログ・ レポート作成時のオプションの一覧です。 これらのオプションについての詳細と, それらを使用したエラー・ログ・レポートの例は,『OpenVMSシステム管理ユーティリティ・ リファレンス・マニュアル』を参照してください。
オプション | 説明 |
---|---|
レポート書式の指定 | 以下の修飾子を使って,レポート書式を変更する。
|
レポートを表示する装置の指定 | /OUTPUT修飾子により,レポートの送信先として,ターミナル,ディスク, または磁気テープ・ファイルを指定できる。この修飾子を指定しないと( 省略時の設定),レポートはシステム・パラメータ SYS$OUTPUTで指定された装置に送信される。 エラー・ログのレポートの幅は72カラムであり,そのままでターミナル・ スクリーンに左右が収まるようになっている。 |
レポートに含む エントリの指定 | 特定の種類のイベント,
および特定の期間のエラー・ログ・レポートを作成することができる。
たとえば,修飾子に/SINCE,/BEFORE,または/ENTRYを使用すると,
処理対象のエラー・ログ・エントリの期間を選択できる。
修飾子に/INCLUDEまたは/EXCLUDEを使用すると,特定のイベントに関するエラー・ ログ・エントリを指定できる。/INCLUDEでは処理対象にするエントリを,/EXCLUDE では処理対象から除外するエントリを指定する。 また,/NODE修飾子によって,レポートに含む1つまたは複数のOpenVMS Clusterメンバを指定できる。 |
未知のエラー・ ログ・エントリの除外 | 通常,ANALYZE/ERROR_LOGの実行中に未知の装置,CPU ,またはエラー・ログ・エントリがあると, そのエントリは16進数のロング・ワード形式で作成される。このようなエントリをレポートに含めないようにするためには, コマンド行で/EXCLUDE=UNKNOWN_ENTRIES を指定する。 |
DECeventイベント管理ユーティリティ(DECevent)は,システム・ユーザとオペレーティング・ システムのイベント・ログ・ファイルとの間のインタフェースを提供します。
DECeventを使用すると,システム・ユーザは,システム・イベント・エントリから派生するASCII レポートを作成することができます。ASCIIレポートの形式は, 最大255文字までのコマンド言語インタプリタ(CLI)に入力したコマンドによって異なります。
他の入力ファイルを指定していなければ,DECeventは,省略時の入力ファイルとしてエラー・ ログ・ファイル SYS$ERRORLOG:ERRLOG.SYSを使用します。
イベント・レポートは,潜在的に障害の原因となるシステム領域を識別するので, どのような予防保守を行うかを決定するのに便利です。また,イベント・ レポートは,障害の原因となったイベントを文書化するので,診断の補助にもなります。
イベント・レポートの内容は,弊社のサポート担当者にとって最も重要なものです。 一方,ユーザもこのレポートをシステム信頼性の重要な尺度として使用することができます。 たとえば,DCLのSHOW ERRORコマンドを使用して, 特定の装置が通常より多くのイベントを生成していることを見つけたとします。 ここで,DECeventを使用すれば,さまざまな詳細レポートを入手し, 弊社のサポート担当者に問い合わせる必要があるかどうかも決定できます。
システム・コンポーネントの障害の場合,弊社のサポート担当者は,イベント・ レポートを使って,障害の直前から障害までのイベントの履歴を作成することができます。
診断プログラムを組み合わせて使用することで,システム・ダウンの時間を大幅に短縮することができます。
DECeventは5つのタイプのレポートを作成します。
レポート・タイプ | 説明 |
---|---|
詳細 (省略時の設定) | イベント・ログ中のすべてのエントリの中から, 利用できるすべての情報を変換する。 |
簡略 | イベント・ ログ中のすべてのエントリの中から,重要な情報だけを変換する。 |
簡潔 | バイナリ・イベント情報を提供し, レジスタ値および他のASCIIメッセージを凝縮した形式で表示する。 |
要約 | イベント・ ログ中のイベント・エントリを統計的に要約する。 |
高速エラー(FSTERR) | さまざまなディスクおよびテープ装置のユーザ・ イベント・ログを,エントリごとに1行ずつ簡潔に報告する。 |
上記のレポート・タイプは相互に排他的です。つまり,1つのコマンドの中では,1 つのレポート・タイプしか選択できません。
レポート・タイプの例については,第18.5.5 項を参照してください。DECeventが作成するその他のレポート・タイプについては, 『OpenVMSシステム管理ユーティリティ・ リファレンス・マニュアル』を参照してください。
以降の項では,DECeventの使用方法について説明します。
作業 | 参照項目 |
---|---|
DECeventの起動と終了 | 第18.5.2 項 |
DECevent修飾子の使用方法 | 第18.5.3項 |
その他のDECeventコマンドの使用方法 | 第18.5.4項 |
DECeventレポートの作成方法 | 第18.5.5項 |
また,制約については第18.5.6項で説明します。
DECeventを起動するには,次のコマンドを入力します。
$ DIAGNOSE/TRANSLATE [/修飾子] [ファイル指定][,..]
DECeventはプロンプトを表示しません。DECeventを終了するときは, Ctrl/CとReturnキーを押します(このようにしなければ,プロンプトが表示されません) 。
表 18-5に,DECevent修飾子の一覧を示します。DECevent の修飾子は,DECeventが作成するレポートの形式を変更するものです。
修飾子 | 説明 |
---|---|
/BEFORE | 指定した日付および時間より前のエントリだけを選択してイベント・ レポートを作成する。 |
/BINARY | バイナリ・エラー・ログ・レコードをASCII テキストに変換するか,指定した出力ファイルにコピーするかを制御する。 |
/BRIEF | 簡略レポートを作成する。 |
/CONTINUOUS | オペレーティング・システムのイベント・ロガーがイベントを記録するときに, リアル・タイムでイベントを書式化するかどうかを指定する。 |
/DUMP | 簡略レポートの後に入力イベント・ ログ・ファイルの情報のダンプを出力するかどうかを指定する。 |
/ENTRY | 指定した範囲の, または指定した番号以降のエントリのレポートを作成する。 |
/EXCLUDE | 指定した装置クラス, 装置名,エラー・ログ・エントリ・タイプ以外のイベントのレポートを作成する。 |
/FSTERR | ディスクおよびテープのイベント・ログ・エントリについて,エントリごとに1 行ずつ簡潔に報告する。 |
/FULL | 詳細レポートを作成する(省略時の設定)。このレポートでは, イベント・ログ・エントリの使用できるすべての情報が報告される。 |
/INCLUDE | 指定した装置クラス,装置名,エラー・ログ・エントリ・タイプのイベントを含んだレポートを作成する。 |
/INTERACTIVE | コマンド行インタフェースを終了し, DECevent会話式コマンド・シェルに入る。 |
/LOG | 各入力ファイルに対して,選択したエントリ数および拒否したエントリ数を指定する情報メッセージを,SYS$OUTPUT に送信するかどうかを制御する。 |
/NODE | クラスタ内の特定のノードのイベント・エントリからなるレポートを作成する。 |
/OUTPUT | レポートの出力ファイルを指定する。 |
/REJECTED | 拒否するエントリのバイナリ・レコードが格納されるファイル名を指定する。 |
/SINCE | 指定した日付および時刻より後のエントリを選択してレポートを作成する。 |
/SUMMARY | 統計的に要約したイベント・レポートを作成する。 |
/TERSE | バイナリ・ イベント情報,凝縮された形式のレジスタ値,およびASCIIメッセージからなるイベント・ レポートを作成する。 |
/TRANSLATE | DIAGNOSEコマンド動詞のための省略時の修飾子。 |
/BINARY修飾子は,レポート・タイプ修飾子(/FULL,/BRIEF,/TERSE, /SUMMARY,/FSTERR)または/OUTPUT修飾子とともに使用しないでください。
表 18-5にリストした修飾子の他に,DECevent には一連のDIRECTORYコマンド・セット,およびSHOWコマンド・ セットがあります。
このコマンドは,DECeventがイベントを判読できる形式に変換するのに使用するルールセットのリストを表示する( ルールセット は実行可能ファイルに似た,ソフトウェア・ルーチンまたはソフトウェア関数である) 。
次に,現在DECeventに組み込まれているDIRECTORYコマンドを示す。
このコマンドは,イベント変換に関連するすべてのルールセットをリストする。
このコマンドは,イベント・レポートに関連するすべてのルールセットをリストする。
このコマンドは,特定の設定および選択を表示する。次に,現在DECevent に組み込まれているSHOWコマンドを示す。
特定の選択キーワード名をSHOW SELECTコマンドに指定すると,その選択キーワードのみを表示する。
特定の設定名をSHOW SETTINGコマンドに指定すると,その設定名およびその値のみを表示する。
この項では,DECeventコマンドおよびレポートの例を示します。
詳細レポートを作成するには,/FULL修飾子を指定します。詳細レポート形式では, イベント・ログ中のすべてのエントリの,使用できるすべての情報が変換されます。 詳細レポートは,コマンド行でレポート・タイプを指定しなかった場合の省略時のレポート・ タイプです。
次のコマンドは,両方とも詳細形式のレポートを作成します。
$ DIAGNOSE/TRANSLATE/FULL $ DIAGNOSE
(/TRANSLATEおよび/FULLは省略時の値です。)
例 18-1に,詳細レポートの形式を示します。
******************************** ENTRY 1 ******************************** Logging OS 1. OpenVMS System Architecture 2. Alpha OS version V7.2 Event sequence number 1583. Timestamp of occurrence 18-APR-1998 09:21:18 System uptime in seconds 58004. Error mask x00000000 Flags x0001 Dynamic Device Recognition present Host name COGENT Alpha HW model DEC 3000 Model 400 System type register x00000004 DEC 3000 Unique CPU ID x00000002 mpnum x000000FF mperr x000000FF Event validity -1. Unknown validity code Event severity -1. Unknown severity code Entry type 100. Major Event class 3. IO Subsystem IO Minor Class 1. MSCP IO Minor Sub Class 5. Logged Message ---- Device Profile ---- Vendor Product Name RAID 0 - Host Based Unit Name COGENT$DPA Unit Number 10. Device Class x0001 Disk ---- IO SW Profile ---- VMS DC$_CLASS 1. VMS DT$_TYPE 175. ---- MSCP Logged Msg ---- Logged Message Type Code 22. RAID Message RAID Event Type 8. Remove Member Distinguished Member 0. Member Index 1. RAID Urgency 4. Global Disk Error RAID Status x00180009 Bit 00 - Reduced Bit 03 - Striped Bit 19 - FE Dis FE Bit 20 - BC Buff Copy Off RAIDset Name KGB ****************************************************************************
簡略レポートを作成するには,/BRIEF修飾子を指定します。簡略レポート形式では, イベント・ログ中のすべてのエントリの重要な情報だけが変換されます。 次に例を示します。
$ DIAGNOSE/TRANSLATE/BRIEF
例 18-2に,簡略レポートの形式を示します。
******************************** ENTRY 1 ******************************** Logging OS 1. OpenVMS System Architecture 2. Alpha OS version V7.2 Event sequence number 1583. Timestamp of occurrence 18-APR-1998 09:21:18 System uptime in seconds 58004. Error mask x00000000 Host name COGENT Alpha HW model DEC 3000 Model 400 System type register x00000004 DEC 3000 Unique CPU ID x00000002 mpnum x000000FF mperr x000000FF Event validity -1. Unknown validity code Event severity -1. Unknown severity code Major Event class 3. IO Subsystem IO Minor Class 1. MSCP IO Minor Sub Class 5. Logged Message ---- Device Profile ---- Vendor Product Name RAID 0 - Host Based Unit Name COGENT$DPA Unit Number 10. Device Class x0001 Disk Logged Message Type Code 22. RAID Message RAID Event Type 8. Remove Member Distinguished Member 0. Member Index 1. RAID Urgency 4. Global Disk Error RAID Status x00180009 Bit 00 - Reduced Bit 03 - Striped Bit 19 - FE Dis FE Bit 20 - BC Buff Copy Off RAIDset Name KGB *****************************************************************************
簡潔レポートを作成するには,/TERSE修飾子を指定します。簡潔レポート形式では, バイナリ・イベント情報が提供され,凝縮された形式のレジスタ値および他のASCII メッセージが表示されます。次に例を示します。
$ DIAGNOSE/TRANSLATE/TERSE
例 18-3に,簡潔レポートの形式を示します。
******************************** ENTRY 1 ******************************** Logging OS 1. System Architecture 2. OS version V7.2 Event sequence number 1583. Timestamp of occurrence 1998041809211800 System uptime in seconds 58004. Error mask x00000000 Flags x0001 Host name COGENT Alpha HW model DEC 3000 Model 400 System type register x00000004 Unique CPU ID x00000002 mpnum x000000FF mperr x000000FF Event validity -1. Event severity -1. Entry type 100. Major Event class 3. IO Minor Class 1. IO Minor Sub Class 5. ---- Device Profile ---- Vendor Product Name RAID 0 - Host Based Unit Name COGENT$DPA Unit Number 10. Device Class x0001 ---- IO SW Profile ---- VMS DC$_CLASS 1. VMS DT$_TYPE 175. ---- MSCP Logged Msg ---- Logged Message Type Code 22. RAID Event Type 8. Distinguished Member 0. Member Index 1. RAID Urgency 4. RAID Status x00180009 RAIDset Name KGB **********************************************************************
要約レポートを作成するには,/SUMMARY修飾子を指定します。要約レポート形式では, イベント・ログ中のイベント・エントリが統計的に要約されます。 次に例を示します。
$ DIAGNOSE/TRANSLATE/SUMMARY
例 18-4に,要約レポートの形式を示します。
SUMMARY OF ALL ENTRIES LOGGED ON NODE COGENT IO Subsystem MSCP 9. Host Based RAID 3. DATE OF EARLIEST ENTRY 18-APR-1998 09:21:18 DATE OF LATEST ENTRY 12-MAY-1998 10:44:54
高速エラー・レポートを作成するには,/FSTERR修飾子を指定します。次に例を示します。
$ DIAGNOSE/TRANSLATE/FSTERR
高速エラー・レポートでは,さまざまなディスクおよびテープ装置のイベント・ ログについて,エントリごとに1行ずつ報告されます。余分なイベント情報がないので, イベントの解析およびシステムのトラブルシューティングが簡単になります。 次に例を示します。
$ DIAGNOSE/FSTERR [infile]
例 18-5に高速エラー・レポートの例を示します。
Drive/ MSCP Physical HSC Volume Drive Name yymmdd hhmmss Entry Evnt LED LBN Cyl Hd Sec RA RP Serial ============= ============= ===== ==== === ======= ==== == === === == ====== LUKE$DUA070 921119 160754 3 00EB 255 70 71 V00717 LUKE$DUA070 921119 160754 4 00EB 255 70 71 V00717 HSC015$DUA028 910323 113204 5 00EB 70 51 V15039 HSC015$DUA028 910323 113204 6 00EB 71 51 V15039 BATES$DUA197 921118 002116 7 00EB 72 32 V17524 CHEWIE$DUA101 911205 114908 8 00EB 73 81 V 17 PMASON$DUA006 921207 165007 15 00EB 255 90 42 D23387 PMASON$DUA006 921207 165007 16 00EB 255 90 42 D23387 C3P0$DUA242 870218 060031 17 01AB 90 40 D48575 CHER$DU2132*901008 231053 18 00EB 92 81 D 2345
高速エラー・レポートには,弊社のサポート担当者がテープ装置またはディスク装置の問題を解決するのに必要な情報が入っています。
DECeventユーティリティを使うときには,この項で説明する制約事項に注意してください。
ページ・ファイル・クォータを超えると,DECeventが終了し,システム・ プロンプトが表示されます。このような場合には,最後のコマンドを実行してください。
DECeventは,ファイル名の検索リストとして定義された論理名を,入力とみなしません。 次の例を参照してください。
$ DEFINE EVENT_LOG DISK1:[EVENTS]EVENT_LOG1.SYS,DISK1:EVENT_LOG.SYS $ DIAGNOSE/ANALYZE EVENT_LOG DECevent T1.0 FT2 _DIAGNOSE-FAT: Analyze - No files found ' event_log ' _DIAGNOSE-FAT: An error occurred while executing a command ruleset _DIAGNOSE-INF: No Error Messages to send in thread 1
DECeventは,ログ・ファイルを自動的にパージしません。次のように,必要に応じてファイルおよびディレクトリにバージョン制限を設定してください。
$ SET FILE/VERSION=3 DIA_ACTIVITY.LOG
DECeventを実行するシステムをシャットダウンして再ブートすると, DECEVENT$STARTUP.COMはFMGPROFILE論理名を定義しません。これにより, システム起動の呼び出しログ(SICL)の適切なログが,妨害されることがあります。 これは,SICLメッセージ・テキストにあるカスタマ・プロファイル情報が失われるからです。
DIAGNOSEコマンドは,$SNDERRシステム・サービスでログされたエラー・ ログ・メッセージを認識しません。
この節では,オペレータ・ログ・ファイルと,このファイルに記録されるOPCOM メッセージについて説明し,次の表の作業手順を示します。これらの作業を行う場合はOPER 特権が必要になります。
作業 | 参照箇所 |
---|---|
オペレータ・ログ・ファイルの設定 | 第18.6.3項 |
オペレータ・ ログ・ファイルの管理 | 第18.6.4項 |
オペレータ・ログ・ファイルのプリント | 第18.6.5 項 |
オペレータ・ログ・ファイル(SYS$MANAGER:OPERATOR.LOG)には,システム・ イベントと,オペレータ通信マネージャ(OPCOM)からオペレータ・ターミナルに送信されたユーザ要求が記録されます。 記録は,すべてのオペレータ・ ターミナルが使用不能になっている場合でも行われます。通常, OPCOMはシステムをブートすると起動します。OPCOMについての詳細は,第2.4節を参照してください。
オペレータ・ログ・ファイルにより,ハードウェアおよびソフトウェアの障害を予測してそれらを事前に防止したり, ディスクおよび磁気テープに対するユーザ要求を監視することもできます。 オペレータ・ログ・ファイルを定期的に調べれば, 今後障害につながる可能性がある問題を事前に見つけ, 適切な処置をとることができます。
OPERATOR.LOGファイル(または論理名OPC$LOGFILE_NAMEが指すファイル)のサイズとアクセスは, それが置かれているディスク装置のサイズとアクセスの制限を受けます。 ディスク装置にログ・ファイルを書き込むだけの余裕がなかったり, 他の方法での装置へのアクセスが制限されていたりすると, ログ・ファイルから記録が失われる可能性があります。
次の表に示す各項では,オペレータ・ログ・ファイルに含まれるメッセージの種類を説明します。
メッセージの種類 | 参照箇所 |
---|---|
初期化メッセージ | 第18.6.2.1項 |
装置状態を示すメッセージ | 第18.6.2.2 項 |
ターミナルの使用可能または不能メッセージなったことを示すメッセージ | 第18.6.2.3項 |
ユーザ要求とオペレータ応答メッセージ | 第18.6.2.4項 |
ボリュームがマウントまたはディスマウントされたことを示すメッセージ | 第18.6.2.5項 |
システム・パラメータ・ メッセージ | 第18.6.2.6 項 |
機密保護アラーム・メッセージ | 第18.6.2.7 項 |
第18.6.2.8項に,オペレータ・ ログ・ ファイル内にある典型的なメッセージの例を示します。
REPLY/LOGコマンドを入力すると,現在のオペレータ・ログ・ファイルがクローズし, 代わりに新しいバージョンがオープンします。それ以後生成されるOPCOM メッセージは,この新しいログ・ファイルに記録されるようになります。
新しいログ・ファイルを作成すると,その先頭には初期化メッセージが記録されます。 初期化メッセージには,ログ・ファイルを初期化したオペレータとそのログ・ ファイル指定が次の形式で示されます。
%%%%%%%%%%% %OPCOM, <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%% Logfile has been initialized by operator <terminal-name> Logfile is <logfile-specification>
%%%%%%%%%%% OPCOM, 19-APR-1998 12:29:24.52 %%%%%%%%%%% Logfile has been initialized by operator _MARS$VTA2: Logfile is HOMER::SYS$SYSMOND:[SYSMGT]OPERATOR.LOG;43
一部の入出力ドライバは,制御する装置の状態変化に関するメッセージをOPCOM に送信します。たとえば,ライン・プリンタがオフラインになった場合, 明示的にオンライン状態に戻すまで,オペレータ・ログ・ファイルにはOPCOM メッセージが定期的に記録されます。
オペレータ・ログ・ファイルに記録される装置状態メッセージの形式は次のとおりです。
%%%%%%%%%%%% OPCOM <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%%% Device <装置名> is offline
このメッセージは,カード・リーダ,ライン・プリンタ,磁気テープの場合に表示されます。
次に,ターミナルをオペレータ・ターミナル(コンソール)として使用可能または使用不能にするコマンドの例を示し, それらのコマンドを実行したときにオペレータ・ ログ・ファイルに記録されるメッセージについて説明します。
ターミナルをオペレータ・ターミナルとして指定する場合は,使用したいターミナルでREPLY/ENABLE と入力します。OPCOMは次の形式のメッセージをオペレータ・ ターミナルに表示し,同時にオペレータ・ログ・ファイルに記録して, この要求を確認します。
%%%%%%%%%%%% %OPCOM dd-mmm-yyyy hh:mm:ss.cc %%%%%%%%%%%% Operator <ターミナル名> has been enabled, username <ユーザ名> %%%%%%%%%%%% %OPCOM dd-mmm-yyyy hh:mm:ss.cc %%%%%%%%%%%% Operator status for operator <ターミナル名> <状態レポート>
このメッセージはオペレータ・ターミナルとして使用可能になったターミナルを示し, そのターミナルが受け付けて応答できる要求をリストします。
また,REPLY/ENABLE=クラス・コマンドを入力すると,ターミナルを特定の機能のためのオペレータ・ ターミナルとして指定することもできます。
たとえば,REPLY/ENABLE=TAPESコマンドを入力すると,OPCOMにより,次のようなメッセージが表示されます。
%%%%%%%%%%%% %OPCOM 19-APR-1998 10:25:35.74 %%%%%%%%%%%% Operator _ROUND$OPA1: has been enabled, username SYSTEM %%%%%%%%%%%% %OPCOM 19-APR-1998 10:25:38.82 %%%%%%%%%%%% Operator status for operator _ROUND$OPA1: TAPES
OPCOMは,このターミナルがオペレータ・ターミナルとして使用可能になったことを確認し, またこのターミナルがテープのマウントやディスマウントなど, 磁気テープに関するイベントの要求と応答だけを扱うことのできるターミナルであることを示します。
オペレータ・ターミナルとして宣言されたターミナルは,そのオペレータがログアウトすると自動的に非オペレータ・ ターミナルの状態になります。 ログアウトしないでターミナルを通常の(非オペレータの)状態に戻すためには, そのターミナルからREPLY/DISABLEコマンドを実行します。
OPCOMは,そのターミナルがオペレータ・ターミナルでなくなったことを確認するメッセージをターミナルに表示し, 同時にオペレータ・ログ・ファイルに記録します。 このメッセージは,ターミナルが非オペレータ状態に戻ったことと, その状態変化が行われた日時を次の形式で示します。
%%%%%%%%%%% %OPCOM <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%% Operator <ターミナル名> has been disabled, username <ユーザ名>
あるターミナルをオペレータ・ターミナルとして宣言したときにその機能の一部が使用できない場合は,OPCOM から状態メッセージが表示されます。 状態メッセージは,該当するターミナルが受け取ったり応答したりできる要求を示します。 形式は次のとおりです。
%%%%%%%%%%% %OPCOM <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%% Operator status for operator <ターミナル名> <状態レポート>
たとえば,ターミナルを,磁気テープおよびディスクに関連するメッセージ, およびOPER10というシステム固有の特殊なオペレータ・クラスのメッセージを受信するオペレータ・ ターミナルとして定義し,後になって, テープに関連するメッセージの受信をやめる場合を考えてみます。 REPLY/DISABLE=TAPESコマンドを実行すると,OPCOMから次のようなメッセージが返されます。
%%%%%%%%%%% %Opcom 19-APR-1998 09:23:45.32 %%%%%%%%%%% Operator status for operator TTA3 DISKS, OPER10
このメッセージは,TTA3というターミナルが,ディスクに関するメッセージとオペレータ・ クラスOPER10へのメッセージを受信していること,および受信したメッセージに対して応答ができることを示しています。
ユーザがオペレータと連絡をとるためには,REQUESTコマンドで/REPLY修飾子あるいは/TO 修飾子のいずれかを指定します。これらの修飾子には次の働きがあります。
コマンド | 説明 |
---|---|
REQUEST/REPLY | 要求は次の形式でオペレータ・
ログ・ファイルに記録される。
%%%%%%%%%%% %OPCOM <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%% Request literl<要求 id>, from user <ユーザ名> on <ノード名> <_ターミナル名:>, <"メッセージ・テキスト"> このメッセージは,メッセージを送信したユーザ,メッセージが送信された時刻, メッセージに割り当てられた要求識別番号(要求ID), そのメッセージの発信元のターミナル,およびメッセージを示している。 |
REQUEST/TO | 要求内容は,REQUEST/REPLY
の例で示した形式でオペレータ・ログ・ファイルに記録される。
ただし,要求IDは記録されない。
%%%%%%%%%%% %OPCOM, <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%% Request from user <ユーザ名> on <ノード名> <_ターミナル名:>, <"メッセージ・テキスト"> |
また,メッセージは,ユーザに対してどのように応答するかによっても異なってきます。
コマンド | 説明 |
---|---|
REPLY/TO | 内容はオペレータ・ログ・ファイルに次の形式で記録される。
response message <hh:mm:ss.cc>, request <要求 id> completed by operator <ターミナル名> このメッセージは,オペレータがユーザの要求にどう応答したか,応答が入力された時刻, 応答したオペレータを示している。 |
REPLY/ABORT | 内容はオペレータ・ログ・ファイルに次の形式で記録される。
<hh:mm:ss.cc>, request <要求 id> was aborted by operator <ターミナル名> |
REPLY/PENDING | 内容はオペレータ・ ログ・ファイルに記録されない。これは,その要求が完了しない( すなわち,応答も中断もされない)ためである。 |
REQUEST/REPLYコマンドによってすべてのオペレータ・ターミナルが使用不能になると,OPCOM はそれ以後,ユーザからのすべての要求をログ・ファイルに記録しますが, オペレータの応答が行われないことを示すメッセージをユーザに返すことはありません。
オペレータ・ログ・ファイルに記録されるオペレータ応答は,REPLY /ENABLE,REPLY/DISABLE,REPLY/LOGの各コマンドに関連するものだけです。 他のオペレータ応答は記録されません。
オペレータ・ログ・ファイルに記録されるオペレータ・メッセージの多くは, おそらく次のようなボリュームのマウントとディスマウントに関するものです。
%%%%%%%%%%% OPCOM, 19-APR-1998 22:41:07.54 %%%%%%%%%%% message from user SYSTEM Volume "KLATU " dismounted, on physical device MTA0: 15-APR-1998 22:42:14.81, request 2 completed by operator OPA0
ユーザは適切な特権を持っていれば,システム・パラメータの以下の値を変更することができます。
値 | 説明 |
---|---|
現在値 | ディスク上の省略時のパラメータ・ファイルに格納されている値で, システムのブート時に使用される。 |
アクティブ値 | メモリに格納されている値で, システムの稼働時に使用される。 |
システムはブートするとき,現在値をメモリに読み込み,アクティブ値を作成します。 アクティブ値と現在値は,どちらかを変更するまでは同じ値となります。
ユーザは,システム・パラメータのアクティブ値と現在値に以下の変更を加えることができます。
OPCOMは,現在のシステム・パラメータに対して行われたすべての変更を,SYSGEN メッセージとしてログ・ファイルに記録します。形式は次のとおりです。
%%%%%%%%%%% %OPCOM <dd-mmm-yyyy hh:mm:ss.cc> %%%%%%%%%%% Message from user <ユーザ名> %SYSGEN-I-WRITExxx, <システム・モー ド> system parameters modified by process ID <プロセス id> into file <ファイル指定>
%%%%%%%%%%% %OPCOM 3-JUN-1998 08:11:59.55 %%%%%%%%%%% Message from user D_PLUTO on ANASAT %SYSGEN-I-WRITECUR, CURRENT system parameters modified by process ID 0000020B into file SYS$UPDATE:[SYSTEM]UPDATESYS.PAR;2
このメッセージは,システム・パラメータの現在値が変更されていることを示しています。
アラーム・メッセージは,選択したイベントが発生したときに機密保護オペレータ・ ターミナルに送信されます。機密保護アラーム・メッセージをターミナルで受信できるようにするための方法については, 第18.7.6項を参照してください。
次の例は,JTQUOTAに変更した後の機密保護アラームOPCOMメッセージを表しています。
%%%%%%%%%%% OPCOM 6-JAN-1998 10:41:21.10 %%%%%%%%%%% Message from user AUDIT$SERVER on BISCO Security alarm (SECURITY) and security audit (SECURITY) on BISCO, system id: 20353 Auditable event: System UAF record modification Event time: 6-JAN-1998 10:41:20.69 PID: 00600123 Process name: SYSTEM Username: SYSTEM Process owner: [SYSTEM] Terminal name: RTA1: Image name: BISCO$DUA0:[SYS0.SYSCOMMON.][SYSEXE]AUTHORIZE.EXE Object class name: FILE Object name: SYS$SYSTEM:SYSUAF.DAT;4 User record: NEWPORT JTQUOTA: New: 2048 Original: 1024
例 18-6に,オペレータ・ログ・ ファイルに記録される代表的なメッセージの一部を示します。
%%%%%%%%%%% OPCOM, 19-APR-1998 22:26:07.90 %%%%%%%%%%% Device DMA0: is offline. 【1】 Mount verification in progress. %%%%%%%%%%% OPCOM, 19-APR-1998 22:26:20.22 %%%%%%%%%%% Mount verification completed for device DMA0: %%%%%%%%%%% OPCOM, 19-APR-1998 22:33:54.07 %%%%%%%%%%% Operator '_ZEUS$VT333:' has been disabled, user JONES 【2】 %%%%%%%%%%% OPCOM, 19-APR-1998 22:34:15.47 %%%%%%%%%%% Operator '_ZEUS$VT333:' has been enabled, user SMITH %%%%%%%%%%% OPCOM, 19-APR-1998 22:34:15.57 %%%%%%%%%%% operator status for '_ZEUS$VT333:' PRINTER, TAPES, DISKS, DEVICES %%%%%%%%%%% OPCOM, 19-APR-1998 22:38:53.21 %%%%%%%%%%% request 1, from user PUBLIC 【3】 Please mount volume KLATU in device MTA0: The tape is in cabinet A %%%%%%%%%%% OPCOM, 19-APR-1998 22:39:54.37 %%%%%%%%%%% request 1 was satisfied. %%%%%%%%%%% OPCOM, 19-APR-1998 22:40:23.54 %%%%%%%%%%% message from user SYSTEM 【4】 Volume "KLATU " mounted, on physical device MTA0: %%%%%%%%%%% OPCOM, 19-APR-1998 22:40:38.02 %%%%%%%%%%% request 2, from user PUBLIC MOUNT new relative volume 2 () on MTA0: %%%%%%%%%%% OPCOM, 19-APR-1998 22:41:07.54 %%%%%%%%%%% message from user SYSTEM Volume "KLATU " dismounted, on physical device MTA0: 15-APR-1998 22:42:14.81, request 2 completed by operator OPA0 %%%%%%%%%%% OPCOM, 19-APR-1998 22:46:47.96 %%%%%%%%%%% request 4, from user PUBLIC _TTB5:, This is a sample user request with reply expected. %%%%%%%%%%% OPCOM, 19-APR-1998 22:47:38.50 %%%%%%%%%%% request 4 was canceled %%%%%%%%%%% OPCOM, 19-APR-1998 22:48:21.15 %%%%%%%%%%% message from user PUBLIC _TTB5:, This is a sample user request without a reply expected. %%%%%%%%%%% OPCOM, 19-APR-1998 22:49:37.64 %%%%%%%%%%% Device DMA0: has been write locked. Mount verification in progress. %%%%%%%%%%% OPCOM, 19-APR-1998 23:33:54.07 %%%%%%%%%%% message from user NETACP DECnet shutting down
各メッセージの種類は次のとおりです。
通常,オペレータ・ログ・ファイルはシステム・ディスクの[SYSMGR]というディレクトリに格納されます。 しかし,論理名OPC$LOGFILE_NAMEを定義することによって, ログ・ファイルを別の場所に格納することもできます。
OPERATOR.LOGファイル(または論理OPC$LOGFILE_NAMEが指すファイル)のサイズとアクセスは, そのファイルが置かれているディスク装置のサイズとアクセスの制限を受けます。 ディスク装置にログ・ファイルを書き込むだけの余裕がなかったり, 他の方法での装置へのアクセスが制限されていたりすると, ログ・ファイルから記録が失われる可能性があります。
このファイルはASCII形式のため,プリントすることができます。ログ・ ファイルの内容を定期的にプリントし,参考資料としてとっておきましょう。 オペレータ・ログ・ファイルをプリントする手順については,第18.6.5項を参照してください。
システムが再ブートするたびに,OPERATOR.LOGの新しいバージョンが作成されます。 ただし,OpenVMS Cluster環境のワークステーションでは,通常ログ・ ファイルをオープンしません。オペレータ・ログ・ファイルは各ノードに1 つ存在し,しかも共用ファイルではないことに注意してください。
DCLのREPLY/LOGコマンドにより,ファイルの新しいバージョンをいつでも作成することができます。 ログ・ファイルとして使用されるのは常に最新のバージョンで, このバージョンは他のユーザがアクセスすることはできません。 省略時の設定では,すべてのオペレータ・クラスのメッセージがログ・ ファイルに記録されます。
次に示すのは,REPLY/LOGコマンドを使用するときのガイドラインです。
ログ・ファイルがすでにオープンしていると,クラス・リストが保持され, 新しく作成されたログ・ファイルで有効になります。ログ・ファイルがオープンしていない場合には, 論理名OPC$ENABLE_LOGFILE_CLASSESの値が使用されます。 この論理名が存在しなければ,新しいログ・ファイルですべてのクラスが有効になります。
詳細は,『OpenVMS DCLディクショナリ』のREPLY/LOG ,REPLY/ENABLE,REPLY/DISABLEの各コマンドの項目を参照してください。
ディスクおよびテープのマウントおよびディスマウント操作を記録するログ・ ファイルをオープンします。
$ REPLY/LOG/ENABLE=(DISKS,TAPES)
コマンド・プロシージャSYS$MANAGER:SYLOGICALS.COMに論理名を定義することによって, オペレータ・ログ・ファイルの省略時の状態を指定することができます。 次の表に,そのような論理名とその働きをまとめます。SYLOGICALS.COM についての詳細は,第5.2.5 項を参照してください。
論理名 | 働き |
---|---|
OPC$ALLOW_INBOUND | ノードに戻ってくるOPCOMトラフィックをオフまたはオンする。 省略時の設定では,この論理名は,TRUE に定義されている。この論理名をFALSEに定義すると,ノードはクラスタ内の別のノードから OPCOM メッセージを受信しなくなる。 |
OPC$ALLOW_OUTBOUND | ノードから出て行くOPCOM トラフィックをオフまたはオンする。省略時の設定では, この論理名は,TRUEに定義されている。この論理名をFALSEに定義すると, ノードはクラスタ内の別のノードへ OPCOMメッセージを送信しなくなる。 |
OPC$LOGFILE_ENABLE | オペレータ・ログ・ファイルをオープンするかどうかを指定する。 この論理名をTRUEに定義するとオペレータ・ログ・ファイルをオープンし, FALSE に定義するとオープンしない。省略時の設定では,OpenVMS Cluster環境上のワークステーションを除くすべてのシステム上でログ・ ファイルがオープンする。 |
OPC$LOGFILE_ CLASSES | ログ・ファイルに記録するイベントのオペレータ・ クラスを指定する。省略時の設定では,すべてのクラスのイベントを記録するものとしてログ・ ファイルをオープンする。論理名は,適用するクラスの検索リスト, コンマで区切ったリスト,あるいはその両方の組み合わせで指定できる。OPC$LOGFILE_ENABLE を定義しない場合でもOPC$LOGFILE_CLASSES を定義できる。その場合,指定したクラスは,オープンするすべてのログ・ ファイルに使用される。しかし,各ログ・ファイルをオープンするかどうかは省略時の設定が適用される。 |
OPC$LOGFILE_NAME | ログ・ファイルの名前を指定する。 この論理名の定義を省略すると,ログ・ファイルの名前はSYS$MANAGER:OPERATOR.LOG となる。システム・ディスク以外のディスクを指定する場合は, コマンド・プロシージャSYLOGICALS.COMにそのディスクをマウントするコマンドを加える必要がある。 |
OPC$OPA0_ENABLE | クラスタ内のワークステーション用のシンボル値を上書きする。 この論理名をTRUEと定義すると, OPA0 装置をBROADCAST (NOBROADCASTの省略時の設定を上書き)に設定する。クラスタ内のワークステーションではないシステムの場合, この論理名をFALSE と定義すると,OPA0装置がNOBROADCASTに設定される。 |
オペレータ・ログ・ファイルを定期的に管理するための計画をたててください。 まず,毎日新しいログ・ファイルを起動し,前日に使用していたファイル(2 番目に新しいバージョン)をリネームするという方法があります( 次の項の例を参照)。あるいは,古いファイルを削除することもできます。 ただし,ログ・ファイルを削除する場合には,必ずそのバックアップをとるようにしてください。 詳細は第5.2.7.9 項を参照してください。
OPCOMを誤って削除してしまった場合は,次の手順に従って手動で起動します。
$ @SYS$SYSTEM:STARTUP OPCOM
次に,オペレータ・ログ・ファイルの最新のバージョンをプリントする手順を示します。 この作業を行うためには,OPER特権が必要です。
$ REPLY/ENABLE
$ REPLY/LOG
$ SET DEFAULT SYS$MANAGER $ DIRECTORY OPERATOR.LOG
$ RENAME OPERATOR.LOG;-1 OPERATOR.OLD
バージョン番号-1は,このファイルの2番目に新しいバージョンを表す。 なお,最も大きなバージョン番号は,現在使用中のオペレータ・ ログ・ファイルである。
$ PRINT OPERATOR.OLD
$ REPLY/ENABLE 【1】 $ REPLY/LOG 【2】 %%%%%%%%%%% OPCOM, 19-APR-1998 12:28:20.11 %%%%%%%%%%% Logfile was closed by operator _MARS$VTA2: 【3】 Logfile was HOMER::SYS$MANAGER:[SYSMGT]OPERATOR.LOG;27 %%%%%%%%%%% OPCOM, 19-APR-1998 12:29:24.52 %%%%%%%%%%% Logfile has been initialized by operator _MARS$VTA2: Logfile is HOMER::SYS$MANAGER:[SYSMGT]OPERATOR.LOG;28 $ SET DEFAULT SYS$MANAGER 【4】 $ DIRECTORY OPERATOR.LOG 【5】 Directory SYS$MANAGER:[SYSMGT] OPERATOR.LOG;28 OPERATOR.LOG;27 Total of 2 files. $ RENAME OPERATOR.LOG;-1 OPERATOR.OLD 【6】 $ PRINT OPERATOR.OLD 【7】
番号が付いた各行の意味は次のとおりです。
この節では,機密保護監査機構の働き,機密保護監査機構の起動,および機密保護監査ログ・ ファイルを新しく作成する方法を説明します。機密保護監査ログ・ ファイルについての詳細は,『OpenVMS Guide to System Security』を参照してください。
機密保護監査機構は,機密保護関係のイベントがシステム上で発生したときに, それを記録する機能です。機密保護関係のイベントは,イベント・ クラスと呼ばれるカテゴリに分類されます。
省略時の設定では,システムを表 18-6 に示すイベント用にインストールまたはアップグレードしたときに, 機密保護監査機構が使用できるようになります。
クラス | 説明 |
---|---|
ACL | 機密保護監査機構ACEを持つ全オブジェクトへのアクセス。 |
AUDIT | SET AUDITコマンドの全用途。 このカテゴリは使用禁止にできない。 |
AUTHORIZATION | 登録データベースに加えたすべての変更。
|
BREAKIN | すべてのブレークインの試み。 バッチ,独立,ダイアルアップ,ローカル,ネットワーク,遠隔。 |
LOGFAILURE | すべてのログイン障害。 バッチ,ダイアルアップ,ローカル,遠隔,ネットワーク,サブプロセス, 独立。 |
使用しているサイトにおける機密保護の必要条件が,その他の監査にも合う場合は, 第18.7.4項で説明するように,DCL のSET AUDITコマンドを使用して,別のイベント・クラスを使用可能にすることができます。
監査サーバ・プロセスは,システム起動時に作成され,機密保護監査ログ・ ファイルSYS$MANAGER:SECURITY.AUDIT$JOURNAL中の特定のイベントを記録します( 記録されるイベントについては,表 18-6 を参照)。
定期的にファイルを検討するときの手順によって,機密保護監査ログ・ファイルの有用性は変わってきます。 サイトの監査検討方針の一部として, たとえば次のような手順が考えられます。
以前のバージョンのシステムで実行される監査分析ユーティリティ(ANALYZE/AUDIT) は,最新バージョンの監査ログ・ファイルを処理できません。 最新バージョンを処理するには,ANALYZE/AUDITの最新バージョンを使用する必要があります。 混合バージョンのクラスタでは,別々の監査ログ・ ファイルを保守することをおすすめします。
監査ログ・ファイルの出力先を変更するには,以前のバージョンを実行するノードと最新バージョンを実行するノードの両方で, 次のコマンドを発行します。
AUDIT/JOURNAL/DESTINATION=ファイル指定
ここで指定したファイル指定は,監査サーバ・データベース・ ファイルに格納されます。省略時の設定では,このファイルはSYS$COMMON:[SYSMGR] に格納され,それぞれSECURITY_ AUDIT.AUDIT$JOURNALとSECURITY.AUDIT$JOURNAL と呼ばれます。
オペレーティング・システムは,ワークステーションと制限された管理リソースを持つユーザが, 監査ログ・ファイルを別のノードに複製することを許可します。2 次ログ,つまり機密保護アーカイブ・ファイルは,ファイルを解析できる遠隔ノード上のセキュリティ・ アドミニストレータが使用できます。
クラスタ内の各ノードは,各自のアーカイブ・ファイルを持っていなければなりません。 アーカイブ・ファイルは,クラスタ内の複数のノードでは共用できません。
詳細は『OpenVMS Guide to System Security』を参照してください。
現在サイトが監査しているイベント・クラスを調べるには,DCLのSHOW AUDITコマンドを入力します。
表示される機密保護情報の例を次に示します。
$ SHOW AUDIT
System security alarms currently enabled for: ACL Breakin: dialup,local,remote,network,detached Privilege use: SECURITY Privilege failure: SECURITY System security audits currently enabled for: ACL Authorization Breakin: dialup,local,remote,network,detached Login: dialup,local,remote,network,detached Logfailure: batch,dialup,local,remote,network,subprocess,detached Logout: dialup,local,remote,network,detached Privilege use: SECURITY Privilege failure: ACNT ALLSPOOL ALTPRI AUDIT BUGCHK BYPASS CMEXEC CMKRNL DETACH DIAGNOSE EXQUOTA GROUP GRPNAM GRPPRV LOG_IO MOUNT NETMBX OPER PFNMAP PHY_IO PRMCEB PRMGBL PRMMBX PSWAPM READALL SECURITY SETPRV SHARE SHMEM SYSGBL SYSLCK SYSNAM SYSPRV TMPMBX VOLPRO WORLD DEVICE access: Failure: read,write,physical,logical,control FILE access: Failure: read,write,execute,delete,control VOLUME access: Failure: read,write,create,delete,control
通常は,SYSTARTUP_VMS.COMが実行される直前にVMS$LPBEGINの監査が開始されますが, 論理名SYS$AUDIT_SERVER_INHIBITを定義し直せば,この動作を変更することができます。
オペレーション・システムが機密保護イベント・メッセージを送り始めるタイミングを変更するには, 次の行をSYS$STARTUP:SYLOGICALS.COMコマンド・ プロシージャに追加します。
$ DEFINE/SYSTEM/EXECUTIVE SYS$AUDIT_SERVER_INHIBIT YES
これで,システム・スタートアップの別のフェーズ(おそらく, SYSTARTUP_VMS.COMの終わり)で監査を開始することができます。これを行うには, コマンド・ファイルを編集して,次の行を追加します。
$ SET AUDIT/SERVER=INITIATE
SYSTARTUP_VMS.COMの編集に関しては,第5.2.7 項を参照してください。
表 18-6に示したクラス以外のクラスに対して機密保護監査を行うには, 次の形式を使用します。
SET AUDIT/ENABLE=キーワード[,...] {/ALARM | /AUDIT}
使用可能にできるイベント・クラスの説明については,『OpenVMS Guide to System Security』を参照してください。
その他のイベント・クラスを監査できるようにするためには,次の2つの修飾子を指定しなければなりません。
/ENABLE,/ALARM,/AUDITの各修飾子について,次に説明します。
修飾子 | 説明 |
---|---|
/ENABLE | 監査するイベント・クラスを定義する。詳細は 第19章を参照。 |
/ALARM /AUDIT | イベント・メッセージのデスティネーションを定義する。
重要なイベントを報告するには,/ALARM修飾子と/AUDIT修飾子を使用する。 比較的重要でないイベントは,後で調べることができるように機密保護監査ログ・ ファイルだけに書き込んでおくことができる。 表 18-6に示す省略時のイベント・ クラスは, ALARMおよびAUDITとして送られる。 |
新しいイベントの監査は,全ノードでそれが使用できるようにすると,すぐに開始されます。
$ SET AUDIT/ENABLE=MOUNT/AUDIT
$ SET AUDIT/ALARM/AUDIT/ENABLE=ACCESS=FAILURE/CLASS=FILE
ユーザが次の構文を使って明示的に/DISABLE修飾子が指定されたクラスを使用禁止にするまで, 監査は続けられます。
SET AUDIT/DISABLE=キーワード[,...] {/ALARM | /AUDIT}
アラーム・メッセージは,セキュリティ・クラス・メッセージ用に使用可能にされているターミナルに送信されます。 機密保護アラーム・メッセージはオペレータ・ ログ・ファイルに書き込まれず,セキュリティ・クラス・ メッセージ用に使用可能にされているターミナルだけに表示されます。
多くの場合,機密保護アラーム・メッセージは省略時の設定としてシステム・ コンソールに表示されますが,メッセージは画面上を高速でスクロールするので, セキュリティ・クラス・メッセージ用に別個のターミナルを使用できるようにしておき, システム・コンソールにはメッセージが表示されないようにしておくとよいでしょう。
安全な場所にあるターミナルをハードコピーの出力用として指定しておくか, あるいはセキュリティ・オペレータ・ターミナルを監視する専門の担当者を決めておくようにしてください。 セキュリティ・オペレータとして使用可能にするターミナルの数に制限はありません。
セキュリティ・クラス・アラーム・メッセージを受信するようにターミナルを設定するには, 指定したターミナルで次のDCLコマンドを入力します。
$ REPLY/ENABLE=SECURITY
次に,機密保護アラーム・メッセージの例を示します。
%%%%%%%%%%% OPCOM 25-MAY-1998 16:07:09.20 %%%%%%%%%%% Message from user AUDIT$SERVER on GILMORE Security alarm (SECURITY) on GILMORE, system id: 20300 Auditable event: Process suspended ($SUSPND) Event time: 25-MAY-1998 16:07:08.77 PID: 30C00119 Process name: Hobbit Username: HUBERT Process owner: [LEGAL,HUBERT] Terminal name: RTA1: Image name: $99$DUA0:[SYS0.SYSCOMMON.][SYSEXE]SET.EXE Status: %SYSTEM-S-NORMAL, normal successful completion Target PID: 30C00126 Target process name: SMISERVER Target username: SYSTEM Target process owner: [SYSTEM]
作成するレポートの最も一般的なタイプは,簡略レポートで,これはイベントの日誌リストです。 その日の機密保護イベント・メッセージのレポートを作成し, そのレポートをMAILを使ってシステム管理者に送信するためのコマンド・ プロシージャを作成して,毎夜バッチ・ジョブ形式で実行することができます。
次に,ANALYZE/AUDITコマンド行を使用して,このようなレポートを作成する例を示します。
$ ANALYZE/AUDIT/SINCE=TODAY/OUTPUT=31JAN1998.AUDIT - _$ SYS$MANAGER:SECURITY.AUDIT$JOURNAL $ MAIL/SUBJECT="Security Events" 31JAN1998.AUDIT SYSTEM
ユーザ側で何らかの処置を行わない限り,機密保護監査ログ・ファイルは大きくなり続けるので, その保守には工夫が必要です。
クラスタ用機密保護監査ログ・ファイルを新しく作成するためには,SET AUDITコマンドを入力します。それまでに記録された監査メッセージが失われないように, メモリ内に記憶されたすべての監査メッセージがファイルに書き込まれるまで, 監査ログ・ファイルの古いバージョンはクローズされません。
機密保護監査ログ・ファイルの,新しい,クラスタ全体としてのバージョンを作成するには, 次のコマンドを使用します。
$ SET AUDIT/SERVER=NEW_LOG
監査サーバ・プロセスにより,クラスタ・ノードごとに監査ログ・ファイルの新しいバージョンがオープンされます。
新しいログをオープンしたら,古いバージョンをリネームします。これには, データの開始または終了日付をファイル名に組み込む,ファイルの命名規則を使用します。 次に古いログを別のディスクにコピーし,ディスク空間を節約するためシステム・ ディスクからこのログを削除します。そして, 古いログに対して監査分析ユーティリティを実行します。
このファイルを保管しておくことにより,クラスタ全体としての監査メッセージの履歴を管理します。 システム上に機密保護の侵害の恐れがあった場合, 指定した時間帯に保管したログ・ファイルを分析して,疑わしいユーザ・ アクティビティを追跡することができます。
場合によっては,OpenVMS Clusterノードが同じシステム・セキュリティ監査ログ・ ファイルを共用していないことがあります。機密保護監査ログ・ ファイルの新しい,ノード固有のバージョンを作成するには,次のコマンドを使用します。
$ SET AUDIT/DESTINATION=ファイル指定 $ SET AUDIT/SERVER=NEW_LOG
ファイル指定には,ノード固有のファイルを指す論理名(SYS$SPECIFIC:[SYSMGR]SECURITY など)を指定します。別のノード上のシステム機密保護監査ログ・ ファイルには影響しません。
Monitorユーティリティ(MONITOR)は,オペレーティング・システムの性能に関する情報を入手するためのシステム管理ツールです。 さまざまなMONITOR 修飾子を指定することにより,稼働中のシステムからシステム性能データを収集したり, 以前にレコード・ファイルに記録されたデータをプレイバックしたりすることができます。 プレイバックしたデータは,表示, 要約したり,記録し直してレコード・ファイル内のデータ量を減らしたりすることもできます。
この節では,MONITORユーティリティの働きと,MONITORユーティリティによって情報を表示したり記録したりするいくつかの異なる方法を説明します。 具体的には,次のトピックを取り上げます。
作業 | 参照箇所 |
---|---|
Monitorユーティリティの起動 | 第18.8.2項 |
システムの動作の表示 | 第18.8.3項 |
システムの動作の記録 | 第18.8.4項 |
システムの動作の表示と記録 | 第18.8.5項 |
記録した動作のプレイバック | 第18.8.6項 |
記録した動作の遠隔プレイバック | 第18.8.7項 |
記録ファイルの更新 | 第18.8.8項 |
MONITORの継続実行 | 第18.8.9 項 |
遠隔監視 | 第18.8.10項 |
Monitorユーティリティにより得られる情報の解釈については,『Guide to OpenVMS Performance Management』を参照してください。また,Monitorユーティリティの使用方法については, 『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル』を参照してください。
MONITORを使用して,システム全体の性能データ(システム入出力統計,ページ管理統計, 各プロセッサ・モードの動作時間など)を特定の間隔で監視し, いろいろな形式で出力することができます。また,MONITORをバックグラウンド・ プロセスとして継続的に実行することにより,システムの性能情報のデータベースを開発することもできます。 これについては,第18.8.9項を参照してください。
各MONITORクラスはいくつかのデータ項目から構成されます。個々のクラスに対して定義されているデータ項目の一覧については, 『OpenVMSシステム管理ユーティリティ・ リファレンス・マニュアル』のMONITORコマンドの説明を参照してください。
特別な情報のクラスを監視するには,MONITORコマンド行にクラス名を指定します。MONITOR が表示する情報は,選択したクラスのタイプによって異なります。 表 18-7では,2つのMONITOR クラス・タイプの比較を示します。
クラスの種類 | 説明 |
---|---|
システム・クラス | システム全体の資源の使用状況に関する統計値。 |
コンポーネント・クラス | 個々のコンポーネントがシステムあるいはクラスタ全体に対してどれだけ「貢献」しているかを示す統計値。 |
MONITORクラスの2つの種類の違いとして,IOクラスとDISKクラスを例にとって考えることができます。IO クラスは,システム全体のすべての直接入出力操作を計測するデータ項目が含まれるため, システム・クラスに属します。 一方,DISKクラスは,個々のディスクの直接入出力操作を計測するため, コンポーネント・クラスに属します。
表 18-8に,各MONITORクラスとクラスの種類( システムかコンポーネントか)を示します。
クラス | 種類 | 説明 |
---|---|---|
ALL_CLASSES | システムまたはコンポーネント | すべてのクラスの統計値 |
CLUSTER | システム | クラスタ全体の性能に関する統計値 |
DECNET | システム | DECnet for OpenVMSに関する統計値 |
DISK | コンポーネント | ディスク入出力に関する統計値 |
DLOCK | システム | 分散型ロック管理情報の統計値 |
FCP | システム | ファイル制御プリミティブに関する統計値 |
FILE_SYSTEM_CACHE | システム | ファイル・システム・キャッシュに関する統計値 |
IO | システム | システム入出力に関する統計値 |
LOCK | システム | ロック管理情報の統計値 |
MODES | コンポーネント | 各プロセッサ・モードでの動作時間 |
MSCP_SERVER | システム | MSCPサーバに関する統計値 |
PAGE | システム | ページ管理情報の統計値 |
PROCESSES | コンポーネント | すべてのプロセスに関する統計値 |
RMS | コンポーネント | レコード管理サービス(RMS)に関する統計値 |
SCS | コンポーネント | システム通信サービスに関する統計値 |
STATES | システム | スケジューラ状態ごとのプロセス数 |
SYSTEM | システム | 他のクラスに関する統計値の要約 |
TRANSACTION | システム | DECdtm サービスに関する統計値 |
+VBS | システム | 仮想バランス・スロットに関する統計値 |
VECTOR | システム | スケジューリングされたベクタ・プロセッサの使用 |
+ VAXのみ |
PROCESSESクラスのものを除き,表示可能なデータ項目はすべてレートとレベルで表されます。
データ項目ごとに,次の4種類の統計値をどれでも,また何種類でも要求することができます。
統計値 | 説明 |
---|---|
レートまたはレベルの現在値 | 最も新しく収集された,レートまたはレベルの値 |
レートまたはレベルの平均値 | MONITOR要求の最初から測定される |
レートまたはレベルの最小値 | MONITOR 要求の最初から測定される |
レートまたはレベルの最大値 | MONITOR要求の最初から測定される |
DISK,MODES,SCS,STATESの各クラスの場合は,オプションとしてすべての統計値をパーセンテージで表すことができます。
PROCESSESクラスでは,MONITORは,説明情報,レベル情報,および時間の経過で増加するカウンタが表示されます。
MONITORは,システム性能データをクラスごとに収集し,指定した修飾子によって, 次のように3種類のオプションの形式で出力します。
修飾子 | 説明 |
---|---|
/DISPLAY | ASCII画面イメージ形式の出力を生成する。 これは/VIEWING_TIME修飾子により指定される頻度で作成される。 |
/RECORD | 要求されたクラスのために収集したデータを含むバイナリ・ レコード・ファイルを生成する。 インターバルごとに,各クラスに1つのレコードが作成される。 |
/SUMMARY | MONITOR要求の間に要求された全クラスの要約統計値を含むASCII ファイルを生成する。 |
上記の修飾子のいずれかとともに/INPUTを指定すると,MONITORは,以前に作成したレコード・ ファイルから1つまたは複数の性能データを収集します。 そうでない場合は,データはカウンタと稼働システム上のデータ構造から収集されます。
MONITOR要求を開始したい場合には/BEGINNING修飾子を,終了したい場合には/ENDING 修飾子をそれぞれ使用します。
MONITORにより収集された情報は,通常はASCII画面イメージとして表示されます。/DISPLAY 修飾子を使用すると,ディスク・ファイルにこの情報を含めるようにオプション指定することができます。 ファイル指定を省略すると, 出力先はSYS$OUTPUTになります。
/DISPLAY修飾子については,『OpenVMSシステム管理ユーティリティ・リファレンス・ マニュアル』を参照してください。
/RECORD修飾子を使用すると,クラスに関する全データが記録されます。 これは,単一の統計値や単一のコンポーネント統計値クラスの項目だけを同時に表示している場合でも同じです。 このファイルはMONITOR要求が開始されたときに作成され, 要求が終了するとクローズします。結果として得られたファイルを今後の要求のソース・ ファイルとして使用して,ターミナル上でデータを形式化して表示したり, 要約ファイルを作成したり, 別の特性を持つ新しいレコード・ファイルを作成したりすることができます。
Monitorユーティリティを起動するためには,次のDCLコマンドを入力します。
$ MONITOR
次のプロンプトが表示されます。
MONITOR>
このプロンプトに対して,任意のMONITORコマンドを入力することができます。 詳細は『OpenVMSシステム管理ユーティリティ・ リファレンス・マニュアル』を参照してください。 ただし,最もよく使用するMONITORコマンドは,クラス名を指定します。
MONITOR> MONITOR PAGE
この例は,ページ管理情報の統計値を監視するためにMONITORコマンドでPAGE クラスを指定しています。
DCLコマンド・レベルからもMONITORのコマンドを使用することができます。
MONITORコマンドによる要求の動作は,/ENDING修飾子を指定するまで続けられます。 ただし,MONITOR要求を変更したり終了したりする場合は,次のいずれかを押します。
キー | 説明 |
---|---|
Ctrl /W | /VIEWING_TIME値を一時的に変更し,現在の画面の直後に新しい画面を生成する。
この機能は,ブロードキャスト・メッセージがMONITOR
表示領域を上書きしてしまった場合に便利である。
また,/VIEWING_TIMEの値が大きいときにCtrl/Wを使うと,要求があり次第表示イベントを生成することができる。 |
Ctrl/C | 現在の要求を終了するが,ユーティリティは終了しない。 したがって,引き続きMONITOR>プロンプトから新しい要求を開始したり, 任意のMONITORコマンドを入力することができる。 |
Ctrl/Z | 現在の要求を終了して, かつMONITORも終了する。 |
システムの動作の表示モードは,定期的に,あるいはインストールのチェック, チューニング,トラブルシューティングで,稼働中のシステムの動作をリアルタイムに調べたい場合に使用します。 出力の履歴情報は記録されません。 次の例は,システムの動作の表示モードの使用方法を示しています。
$ MONITOR PROCESSES/TOPCPU
前回の表示からこのコマンドを実行するまでにCPUを最も使用した8つのプロセスを示す棒グラフが表示される。 また,各プロセスが使用したCPU 時間も表示される。
このコマンドにより次のような出力が生成される。
OpenVMS Monitor Utility TOP CPU TIME PROCESSES on node BOMBAY 20-JAN-1998 10:06:49 0 25 50 75 100 + - - - - + - - - - + - - - - + - - - - -+ 07E00181 CAFARET 100 **************************************** | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + - - - - + - - - - + - - - - + - - - - -+
この例では,ユーザCAFARETが使用できるCPU時間を100パーセント使用している。 ユーザが使用しているコンピュータの資源についてより詳細な情報を表示するには, 次のようなコマンドを使用する。
$ SHOW PROCESS/CONTINUOUS/ID=07E00181
この例では,結果として得られる表示の中で最も役に立つ情報は,イメージの名前であり, たとえば次のように,最後の部分に表示される。
. . . $1$DUA1:[SYS1D.SYSCOMMON.][SYSEXE]RODAN.EXE
この例はCAFARETがRODAN.EXEを実行していることを示している。これは新しいソフトウェアであり, その動作がループしている可能性がある。 このような状況は,CAFARETが特権ユーザで,別のユーザよりも高い優先順位でプロセスを実行した場合に発生する。
$ MONITOR/DISPLAY=PROCESSES.LOG PROCESSES
MONITORからの情報は,サポートされている任意のターミナルまたはディスク・ ファイルに出力することができる。ここでは,MONITORのプロセス統計をPROCESSES.LOG ファイルに書き込んでいる。この後,このファイルをハードコピー装置に出力してプリントすることができる。
$ MY_CLASSES :== - _$ "DECNET+FCP+IO+LOCK+MODES+PAGE+PROCESSES+STATES" $ MONITOR/NODE=(CURLEY,LARRY)/INTERVAL=20/VIEWING_TIME=8 'MY_CLASSES'
頻繁に使用するクラス名の組み合わせは, DCLシンボルに定義しておくと便利なことがある。 ここでは,CURLEYおよびLARRYというOpenVMS Clusterノードに関して選択されたクラスのデータが20秒ごとに収集される。 また,クラスのうちの1つに関して収集されたデータのうちの最新の項目が8 秒ごとに表示される。MONITORでは,クラスの表示順序があらかじめ決められている。
システムの動作の記録は,将来のためにMONITORデータをとっておく必要がある場合に使用します。 次のような用途が考えられます。
ターミナルに物理的に表示できる量より多くの情報を入手したい場合, ターミナルが利用できない場合,またはシステムのデータを入手する必要があるがしばらくはデータ収集のための時間がとれないという場合, 記録モードを利用できる。
MONITORデータを定期的に記録してまとめることで,システム資源の使用量に関する長期間のデータを収集することができる。
次の例は,システムの動作の記録モードの使用方法を示しています。
$ MONITOR/NODE=(LARRY,MOE)/NODISPLAY/RECORD MODES+STATES
各プロセッサ・モードでの動作時間,およびLARRYおよびMOEというノードの各スケジューラ状態におけるプロセス数のデータが記録されます。 ただし, この情報は出力されません。
システムの動作の表示と記録モードは,性能データを保持し,収集されるときにその性能データを表示させる場合に使用します。MONITOR では,記録ファイルに共用読み込みアクセス権が設定されるので, 他の表示プロセスが記録ファイルを書き込んでいる間に, それを別の表示プロセスがプレイバックすることができます。
次の例は,性能の情報を記録しながら,同時に収集中のデータを表示する方法を示しています。 最初の例では,データの収集と記録の両方を同じコマンドで行います。2 番目および3番目の例は,2つの別々のプロセスを使って記録と表示を同時に行う方法を示しています。2 番目の例のプロセスは記録を行い,3 番目の例のプロセスがファイルをプレイバックして要約します。
$ MONITOR/RECORD FCP/AVERAGE,FILE_SYSTEM_CACHE/MINIMUM
ファイル・システムとファイル・システム・キャッシュのデータを3秒ごとに収集して記録する。 さらに,棒グラフによって,FCPの平均値とFILE_SYSTEM_CACHE の最小値が表示される。2つのグラフが3秒ごとに交互に表示される。 現在の統計値は次のプレイバック要求で得られる。
$ MONITOR/RECORD=SYS$MANAGER:ARCHIVE.DAT - _$ /INTERVAL=300/NODISPLAY ALL_CLASSES
すべてのクラスのデータを同時に5秒間隔で保存する。同様のコマンドをバッチ・ ジョブで実行し,ディスクの使用量を注意深く監視すると便利である。
$ MONITOR/INPUT=SYS$MANAGER:ARCHIVE.DAT: - _$ /NODISPLAY/SUMMARY/BEGINNING="-1" PAGE,IO
報告された性能の問題の調査の一部として,過去1時間に発生したページ動作および入出力動作をまとめる。 記録を行うプロセスは5分ごとにOpenVMS RMS フラッシュ動作を行うため,過去5分以内の収集データは表示を行うプロセスからは利用できない点に注意。
/FLUSH_INTERVAL修飾子により,フラッシュ動作を行う間隔を明示的に指定できる。 表示を行うプロセスには,記録ファイルに対する読み込みアクセス権が必要。
プレイバックとは,記録ファイルに収集されたデータの全部または一部をターミナルに表示したり, 要約レポートとしてまとめたりすることをいいます。 データは,クラス,ノード,あるいは時間帯に基づいてまとめることができます。 たとえば,24時間に渡っていくつかのクラスのデータを収集した場合, その間の任意の時間帯の1つ以上のクラスのデータを調べたり, まとめたりできます。
記録した時間帯と別の時間帯のデータを表示したりまとめたりすることも可能です。 スクリーンに表示を行う実際の間隔は,/VIEWING_TIME修飾子で制御します。 次の例は,記録した動作のプレイバックを行う方法を示しています。
$ MONITOR/RECORD/INTERVAL=5 IO . . . $ MONITOR/INPUT IO
システム入出力の統計をとる。最初のコマンドは,データの収集と表示を5 秒間隔で行う。この作業は,このコマンドを入力した時点からCtrl/Z を押すまで続けられる。さらにこのコマンドは,省略時の出力ファイルMONITOR.DAT にバイナリ・データを記録する。
2番目のコマンドは,MONITOR.DATのデータを入力データとして,入出力統計をプレイバックして表示する。 プレイバック・データの省略時の表示時間は3 秒間だが,スクリーンには監視された入出力統計が5秒間ずつ表示される。
$ MONITOR/RECORD/NODISPLAY - _$ /BEGINNING=08:00:00 - _$ /ENDING=16:00:00 - _$ /INTERVAL=120 DISK . . . $ MONITOR/INPUT/DISPLAY=HOURLY.LOG/INTERVAL=3600 DISK
このコマンドの列は,比較的短い間隔でデータを記録し,比較的長い間隔でデータをプレイバックしている。 この方法は,さまざまな時間での平均値, 最小値,最大値を求めるので,長い間隔で収集したときより正確な値が必要なときに便利である。
最初のコマンドは,指定された8時間に2分間隔で,システム上のすべてのディスクの入出力動作に関するデータを記録する。2 番目のコマンドは,1 時間ごとにデータをプレイバックして表示し,その内容をHOURLY.LOG というファイルに保存する。このファイルを表示またはプリントすれば, データを収集した8時間の1時間ごとのディスクの累計使用量が分かる。
$ MONITOR/INPUT/NODISPLAY/SUMMARY=DAILY.LOG DISK
前の例で作成された記録ファイルを使用し,データを収集した8時間の平均値を示す1 ページの要約レポート・ファイルを作成する。要約レポートの形式は画面表示と同じになる。 次に例を示す。
OpenVMS Monitor Utility DISK I/O STATISTICS on node TLC From: 25-JAN-1998 08:00:00 SUMMARY To: 25-JAN-1998 16:00:00 I/O Operation Rate CUR AVE MIN MAX DSA0: SYSTEM_0 0.53 1.50 0.40 3.88 DSA1: SYSTEM_1 0.00 0.39 0.00 8.38 DSA4: WORK_0 0.00 0.11 0.00 1.29 DSA5: WORK_1 0.03 0.87 0.00 5.95 DSA6: WORK_2 0.03 0.25 0.00 2.69 DSA7: WORK_3 0.04 0.97 0.00 20.33 DSA17: TOM_DISK 0.00 0.04 0.00 0.80 DSA23: MKC 0.00 0.00 0.00 0.13 $4$DUA0: (RABBIT) SYSTEM_0 0.20 0.65 0.17 1.97 $4$DUA2: (RABBIT) SYSTEM_0 0.20 0.65 0.17 1.97 $4$DUA3: (RABBIT) SYSTEM_1 0.00 0.14 0.00 2.49 PLAYBACK SUMMARIZING
適切な特権を持っていれば,DECnetによってローカル・システムに接続されている任意のシステムからMONITOR データを収集することができます。 収集中のデータは,同時にローカル・システム上に表示することができます。 その場合,次の手順に従います。
$ ! $ ! * Enable MONITOR remote playback * $ ! $ MONITOR /NODISPLAY/RECORD=SYS$NET ALL_CLASSES
DEFINE遠隔ノード論理名 ノード名::タスク=モニタ
ログイン・コマンド・プロシージャの中でアクセスしたいすべてのシステムの論理名を定義することもできる。
MONITOR/INPUT=遠隔ノード論理名 クラス名
MONITOR.COMファイルを省略時のDECNETディレクトリ以外のディレクトリに置き, アクセス制御文字列または代理のアカウントを使用して,これらのコマンド・ ファイルを遠隔呼び出しすることも可能です。
MONITORをローカル・システムで呼び出した場合は,遠隔システム上にコマンド・ ファイルMONITOR.COMを実行するプロセスが生成されます。したがって, 遠隔システムではこのプロセスに関連するCPUおよびDECnetのオーバヘッドが発生します。 このオーバヘッドは,MONITOR.COMファイルの中に/INTERVAL 修飾子とクラス名のリストを加えることによって制限できます。
混在バージョンのクラスタ・システムにおいて,遠隔で監視を行う方法については 第18.8.10項で説明しています。
記録ファイルの更新は,プレイバックと記録の2つの操作を組み合わせて行われます。 この機能を使用すると,記録ファイルのデータの量を減らすことができます。 既存の記録ファイルをプレイバックする場合は, MONITORのすべてのオプションを利用できます。したがって,記録されているデータから特定のクラス, 時間帯,記録する間隔を選択することができます。
これらの操作により,記録されたデータの一部を削除した,サイズが小さな記録ファイルが新しく作成されます。 収集する間隔を長くするとデータの量は少なくなり, それだけ新しい記録ファイルから表示または要約されるデータの精度は低くなります。 この場合,平均の割合を示す値は影響されませんが, サンプル・データのサイズが小さいために,平均のレベルを示す値の精度は低くなります。 次の例は,記録ファイルの更新方法を示しています。
$ SUBMIT MONREC.COM
MONREC.COMは次のコマンドを含んでいます。
$ MONITOR/NODISPLAY/RECORD/INTERVAL=60 /BEGINNING=8:00/ENDING=16:00 DECNET,LOCK $ MONITOR/INPUT/NODISPLAY/RECORD DECNET
最初のコマンドはバッチ形式で動作し,午前8時から午後4時までの間,1 分ごとにDECnetとロック管理に関する情報を記録します。2番目のコマンドは最初のコマンドが完了すると発行され,MONITOR.DAT ファイルの新しいバージョンを作成してDECnet に関するデータだけを再記録します。
MONITORをバックグランド・プロセスとして継続して実行することにより, システムの性能に関する情報を記録したデータベースを構築することができます。 ここでは,クラスタ管理者として,マルチファイルのクラスタ全体の要約を作成するために使用できるプロシージャの例を示します。
このコマンド・プロシージャを自分のサイトに合うように,変更することができます。 なお,SYSTARTUP.COMに論理名SYS$MONITORおよびMON$ARCHIVE を定義してからでないと,コマンド・ファイルを実行することはできません。
論理名SYS$EXAMPLESが指すディレクトリに,データベースの構築に利用できる3 つのコマンド・プロシージャが含まれています。これらのプロシージャのインストールおよび実行の方法は, 各プロシージャの先頭のコメントに示されています。 表 18-9で,これらのプロシージャについて簡単にまとめます。
プロシージャ名 | 説明 |
---|---|
MONITOR.COM | 前回のブート時に作成された記録ファイルから要約ファイルを作成し, 今回のブートの記録を開始する。記録の間隔は10 分。 |
MONSUM.COM | 複数のファイルから構成されるクラスタ全体の要約レポートを2種類作成して, システム管理者にメールする。一方のレポートには過去24時間の情報が記録され, もう一方のレポートには前日のプライム・タイム( 午前9時から午後6時まで)の情報が記録される。このプロシージャは, 毎日夜中に実行するように,自身をキューに再登録する。 |
SUBMON.COM | MONITOR.COMを独立プロセスとして実行する。 サイト別スタートアップ・コマンド・プロシージャからSUBMON.COM を起動する。 |
MONITORで継続的にデータを記録しながら,特定の期間の要約レポートを作成することができます。MONSUM.COM コマンド・プロシージャは毎晩夜中に実行され, 表 18-9に示す複数のファイルから構成される2 つの要約レポートを生成し,メールします。これらのレポートはファイルに保存されません。 内容を残すためには,メール・ファイルから情報を抽出するか, レポートを保存するようにMONSUM.COMコマンド・ プロシージャを変更します。
前回のブートで収集したデータから記録ファイルおよび要約ファイルを保存し, 現在のブートのデータの連続記録を開始します。例 18-7 のプロシージャは,記録ファイルをパージしない点に注意してください。
$ SET VERIFY $ ! $ ! MONITOR.COM $ ! $ ! This command file is to be placed in a cluster-accessible directory $ ! called SYS$MONITOR and submitted at system startup time as a detached $ ! process via SUBMON.COM. For each node, MONITOR.COM creates, in $ ! SYS$MONITOR, a MONITOR recording file that is updated throughout the $ ! life of the boot. It also creates, in MON$ARCHIVE, a summary file from $ ! the recording file of the previous boot, along with a copy of that $ ! recording file. Include logical name definitions for both cluster- $ ! accessible directories, SYS$MONITOR and MON$ARCHIVE, in SYSTARTUP.COM. $ ! $ SET DEF SYS$MONITOR $ SET NOON $ PURGE MONITOR.LOG/KEEP:2 $ ! $ ! Compute executing node name and recording and summary file names $ ! (incorporating node name and date). $ ! $ NODE = F$GETSYI("NODENAME") $ SEP = "" $ IF NODE .NES. "" THEN SEP = "_" $ DAY = F$EXTRACT (0,2,F$TIME()) $ IF F$EXTRACT(0,1,DAY) .EQS. " " THEN DAY = F$EXTRACT(1,1,DAY) $ MONTH = F$EXTRACT(3,3,F$TIME()) $ ARCHFILNAM = "MON$ARCHIVE:"+NODE+SEP+"MON"+DAY+MONTH $ RECFIL = NODE+SEP+"MON.DAT" $ SUMFIL = ARCHFILNAM+".SUM" $ ! $ ! Check for existence of recording file from previous boot and skip $ ! summary if not present. $ ! $ OPEN/READ/ERROR=NORECFIL RECORDING 'RECFIL' $ CLOSE RECORDING $ ! $ ! $ ! Generate summary file from previous boot. $ ! $ MONITOR /INPUT='RECFIL' /NODISPLAY /SUMMARY='SUMFIL' - $ ALL_CLASSES+MODE/ALL+STATES/ALL+SCS/ITEM=ALL+SYSTEM/ALL+DISK/ITEM=ALL $ ! $ ! $ ! Compute subject string and mail summary file to cluster manager. $ ! $ ! $ A=""" $ B=" MONITOR Summary " $ SUB = A+NODE+B+F$TIME()+A $ MAIL/SUBJECT='SUB' 'SUMFIL' CLUSTER_MANAGER $ ! $ ! $ ! Archive recording file and delete it from SYS$MONITOR. $ ! $ COPY 'RECFIL' 'ARCHFILNAM'.DAT $ DELETE 'RECFIL';* $ ! $ NORECFIL: $ SET PROCESS/PRIORITY=15 $ ! $ ! $ ! Begin recording for this boot. The specified /INTERVAL value is $ ! adequate for long-term summaries; you might need a smaller value $ ! to get reasonable "semi-live" playback summaries (at the expense $ ! of more disk space for the recording file). $ ! $ MONITOR /INTERVAL=300 /NODISPLAY /RECORD='RECFIL' ALL_CLASSES $ ! $ ! $ ! End of MONITOR.COM $ !
例 18-8のプロシージャは,SYSTARTUP.COM から独立プロセスとしてMONITOR.COMをキューに登録し,現在のブートの継続記録を開始します。
$ SET VERIFY $ ! $ ! SUBMON.COM $ ! $ ! This command file is to be placed in a cluster-accessible directory $ ! called SYS$MONITOR. At system startup time, for each node, it is $ ! executed by SYSTARTUP.COM, following logical name definitions for $ ! the cluster-accessible directories SYS$MONITOR and MON$ARCHIVE. $ ! $ ! $ ! Submit detached MONITOR process to do continuous recording. $ ! $ ! $ RUN SYS$SYSTEM:LOGINOUT.EXE - /UIC=[1,4] - /INPUT=SYS$MONITOR:MONITOR.COM - /OUTPUT=SYS$MONITOR:MONITOR.LOG - /ERROR=SYS$MONITOR:MONITOR.LOG - /PROCESS_NAME="Monitor" - /WORKING_SET=512 - /MAXIMUM_WORKING_SET=512 - /EXTENT=512/NOSWAPPING $ ! $ ! $ ! End of SUBMON.COM $ !
例 18-9のプロシージャは, 毎日のプライム・ タイムのクラスタの要約を作成します。
$ SET VERIFY $ ! $ ! MONSUM.COM $ ! $ ! This command file is to be placed in a cluster-accessible directory $ ! called SYS$MONITOR and executed at the convenience of the cluster $ ! manager. The file generates both 24-hour and "prime time" cluster $ ! summaries and resubmits itself to run each day at midnight. $ ! $ SET DEF SYS$MONITOR $ SET NOON $ ! $ ! Compute file specification for MONSUM.COM and resubmit the file. $ ! $ FILE = F$ENVIRONMENT("PROCEDURE") $ FILE = F$PARSE(FILE,,,"DEVICE")+F$PARSE(FILE,,,"DIRECTORY")+F$PARSE(FILE,,,"NAME") $ SUBMIT 'FILE' /AFTER=TOMORROW /NOPRINT $ ! $ ! Generate 24-hour cluster summary. $ ! $ ! $ MONITOR/INPUT=(SYS$MONITOR:*MON*.DAT;*,MON$ARCHIVE:*MON*.DAT;*) - /NODISPLAY/SUMMARY=MONSUM.SUM - ALL_CLASSES+DISK/ITEM=ALL+SCS/ITEM=ALL- /BEGIN="YESTERDAY+0:0:0.00" /END="TODAY+0:0:0.00" /BY_NODE $ ! $ ! $ ! Mail 24-hour summary file to cluster manager and delete the file from $ ! SYS$MONITOR. $ ! $ ! $ MAIL/SUBJECT="Daily Monitor Clusterwide Summary" MONSUM.SUM CLUSTER_MANAGER $ DELETE MONSUM.SUM;* $ ! $ ! Generate prime-time cluster summary. $ ! $ ! $ MONITOR/INPUT=(SYS$MONITOR:*MON*.DAT;*,MON$ARCHIVE:*MON*.DAT;*) - /NODISPLAY/SUMMARY=MONSUM.SUM - ALL_CLASSES+DISK/ITEM=ALL+SCS/ITEM=ALL- /BEGIN="YESTERDAY+9:0:0.00" /END="YESTERDAY+18:0:0.00" /BY_NODE $ ! $ ! $ ! Mail prime-time summary file to cluster manager and delete the file $ ! from SYS$MONITOR. $ ! $ ! $ MAIL/SUBJECT="Prime-Time Monitor Clusterwide Summary" MONSUM.SUM CLUSTER_MANAGER $ DELETE MONSUM.SUM;* $ ! $ ! End of MONSUM.COM $ !
このプロシージャの中のMAILコマンドは,ファイルをCLUSTER_MANAGERというユーザに送信するように指定しています。CLUSTER_MANAGER のところを実際のユーザ名または論理名に置き換えてください。
多くの場合,データは多量になるため,要約ファイルはできるだけプリントするようにします。
MONITORは,転送メカニズムとしてTCP/IPとDECnetの両方を使用できます。OpenVMS V7.0 以降では,TCP/IPを使用するためには, SYS$STARTUP:SYSTARTUP_VMS.COMファイルの中で次のコマンドを実行して, TCP/IP サーバを起動しておく必要があります。
$ @SYS$STARTUP:VPM$STARTUP.COM
DECnetは,ずっと作動し続けます。ネットワーク・オブジェクトは,要求の時に作成されます。
混合バージョンのOpenVMS Clusterシステムにおける遠隔監視
MONITOR CLUSTERコマンドを発行する,または会話型の任意のMONITOR要求で/NODE 修飾子を指定すると,OpenVMS Clusterシステム内の任意のノードを開始することができます。
OpenVMS Clusterシステムでの遠隔監視は,OpenVMSのバージョンが異なるノード間では, 互換性がないことがあります。表 18-10 に,遠隔監視のバージョンの互換性を示します。
OpenVMS Alpha およびVAXバージョン6.nまたは7.n | OpenVMS Alpha バージョン1.5およびVAXバージョン5.n | |
---|---|---|
OpenVMS AlphaおよびVAX バージョン6.nまたは7.n | Yes | No |
OpenVMS Alphaバージョン1.5およびVAXバージョン5.n | No | Yes |
互換性のない遠隔ノードを監視しようとすると,次のメッセージが表示されます。
%MONITOR-E-SRVMISMATCH, MONITOR server on remote node is an incompatible version
このメッセージを受け取っても,MONITORを使って,遠隔ノードについてのデータを得ることができます。 これを行うには,遠隔ノードについてのデータを記録してからMONITOR プレイバック機能を実行し,ローカル・ノードについてのデータを検査します。
OpenVMS Clusterシステムにおいて遠隔ノードを監視する際には,もう1つの相違があります。OpenVMS バージョン6.2以降では,監視できるディスク数の制限が, レコードの出力については799から909に,表示と要約の出力については 799 から1817に増えました。ただし,OpenVMSバージョン6.2以降を実行している遠隔ノードを,OpenVMS バージョン6.2より前のバージョンが実行されているシステムで監視する場合は, 制限値は799のままです。
MONITORについての詳細は,『OpenVMSシステム管理ユーティリティ・リファレンス・ マニュアル』を参照してください。
[ 前のページ ]
[ 次のページ ]
[ 目次 ]
[ 索引 ]
[ DOC Home ]