EDMLckWatcher(データベースのデッドロックおよびタイムアウトの監視)
機能
データベース(HiRDB)のデッドロック情報およびタイムアウト情報が出力されていないかを監視し,出力されている場合は,デッドロック情報,タイムアウト情報および関連するサービスプロセスのトレース情報を取得します。
このコマンドを実行すると取得できる情報(ファイル)を次に示します。
- HiRDBのデッドロック情報
- HiRDBのタイムアウト情報
- DocumentBrokerのサーバのトレースファイル
デッドロック情報およびタイムアウト情報の詳細については,マニュアル「HiRDB システム運用ガイド」を参照してください。DocumentBrokerのサーバのトレースファイルについては,「6.4.1(2) トレースファイル」を参照してください。
また,このコマンドを自動で実行すると,DocumentBrokerサーバが起動(EDMStartコマンドを実行)したタイミングで監視が開始され,DocumentBrokerサーバが停止(EDMStopコマンドを実行)したタイミングで監視が終了されます。このコマンドを自動で実行する場合は,DocumentSpace構成定義ファイル(docspace.ini)のDbLockWatcherエントリに「Accept」を設定してください。なお,このコマンドは手動でも実行できます。
形式
EDMLckWatcher 〔-i HiRDBの運用ディレクトリ名〕
〔-l 格納先ディレクトリ名〕
〔-s 監視時間の間隔〕
〔-c〕
オプション
- -i HiRDBの運用ディレクトリ名
- デッドロック情報およびタイムアウト情報を取得するHiRDBの運用ディレクトリを指定します。指定したディレクトリを基に,"HiRDBの運用ディレクトリ/spool/pdlckinf"から情報を取得します。
- このオプションの指定を省略した場合,環境変数「PDDIR」に設定したディレクトリが有効になります。
- このオプションの指定および環境変数「PDDIR」の設定がない場合,エラーになります。
- -l 格納先ディレクトリ名
- デッドロック情報およびタイムアウト情報の格納先ディレクトリ名をフルパスで指定します。指定されたディレクトリの下にプレフィクス付きのディレクトリを作成し,その下に収集した情報を格納します。プレフィクス付きディレクトリのディレクトリ名を次に示します。
- lck_<YYYYMMDDhhmmssxxx>
- <YYYYMMDDhhmmssxxx>はコマンドを実行した時刻を表す文字列です。YYYYは西暦年号(4けた),MMは月(2けた),DDは日(2けた),hhは時(2けた),mmは分(2けた),ssは秒(2けた),xxxはミリ秒(3けた)を示します。
- 存在するディレクトリを指定してください。存在しないディレクトリを指定するとエラーになります。
- DocumentBrokerのシステム管理者に対して,格納先ディレクトリに書き込み権限を設定してください。書き込み権限が設定されていない場合,ファイルを格納できません。
- このオプションの指定を省略した場合,環境変数「_HIEDMS_LCKINF_DIR」に設定したディレクトリに格納されます。
- このオプションの指定および環境変数「_HIEDMS_LCKINF_DIR」の設定がない場合,エラーになります。
- -s 監視時間の間隔(単位:分)
- デッドロックおよびタイムアウトを監視する時間の間隔を分単位で指定します。
- 指定できる値の範囲は1~120の10進数値です。範囲外の値を指定するとエラーになります。
- このオプションの指定を省略した場合,環境変数「_HIEDMS_LCKWATCH_TIME」の設定値が有効になります。
- このオプションの指定および環境変数「_HIEDMS_LCKWATCH_TIME」の設定がない場合,「10」が仮定されます。
- -c
- デッドロック情報およびタイムアウト情報を退避後,圧縮する場合に指定します。
- 圧縮されたファイルは,デッドロック情報およびタイムアウト情報が格納されたディレクトリと同じディレクトリに,次のファイル名で格納されます。
- lck_<YYYYMMDDhhmmssxxx>.tar.Z
- <YYYYMMDDhhmmssxxx>はコマンドを実行した時刻を表す文字列です。YYYYは西暦年号(4けた),MMは月(2けた),DDは日(2けた),hhは時(2けた),mmは分(2けた),ssは秒(2けた),xxxはミリ秒(3けた)を示します。
- このオプションの指定を省略した場合,環境変数「_HIEDMS_LCKINF_ARCHIVE」の設定値が有効になります。
- このオプションの指定および環境変数「_HIEDMS_LCKINF_ARCHIVE」の設定がない場合,デッドロック情報およびタイムアウト情報は圧縮されません。
設定が必要な環境変数
コマンドを実行する場合に設定が必要な環境変数を次の表に示します。このコマンドを自動で実行する場合,表に示す環境変数の設定値に従ってコマンドが実行されます。そのため,DocumentBrokerサーバを起動する前に,必ず環境変数を設定してください。また,このコマンドを手動で実行する場合,コマンドのオプションの指定を省略すると,表に示す環境変数の設定値に従ってコマンドが実行されます。
表7-9 EDMLckWatcherコマンドを実行する場合に設定が必要な環境変数
環境変数 | 説明 |
---|
PDDIR | HiRDBの運用ディレクトリを設定します。 コマンドを自動で実行する場合,この環境変数の設定は省略できません。設定がないと,エラーになります。 |
_HIEDMS_LCKINF_DIR | デッドロック情報およびタイムアウト情報の格納先ディレクトリを設定します。 文書空間で使用する文字コード種別がUTF-8の場合,印刷可能なASCIIコードで値を設定してください。 コマンドを自動で実行する場合,この環境変数の設定は省略できません。設定がないと,エラーになります。 |
_HIEDMS_LCKWATCH_TIME | デッドロックおよびタイムアウトを監視する時間の間隔を設定します。 コマンドを自動で実行する場合,この環境変数の設定を省略すると「10」が仮定されます。 |
_HIEDMS_LCKINF_ARCHIVE | デッドロック情報およびタイムアウト情報を圧縮するかどうかを設定します。 デッドロック情報およびタイムアウト情報を圧縮する場合は,「Y」または「y」を設定します。「Y」および「y」以外の値を設定すると,デッドロック情報およびタイムアウト情報は圧縮されません。 コマンドを自動で実行する場合,この環境変数の設定を省略すると,デッドロック情報およびタイムアウト情報は圧縮されません。 |
実行例
コマンドの実行例を次に示します。
$EDMLckWatcher -i /usr/HiRDB_P -l /var/tmp -s 10 -c |
注意事項
- このコマンドを実行できるのは,DocumentBrokerサーバとHiRDBサーバを同一マシンで運用している場合だけです。
- このコマンドを実行する前に,DocumentBrokerの実行環境ディレクトリを環境変数「DOCBROKERDIR」に指定してください。
- このコマンドは多重実行できません。自動で実行する場合,同時に手動では実行できません。
- このコマンドは,DocumentBrokerサーバの起動中に実行してください。サーバが停止中に実行するとエラーになります。
- このコマンドが起動しているかどうかは,OSのpsコマンドで確認できます。実行例を次に示します。
$ps -ef | grep EDMLckWatcher |
また,このコマンドを手動で実行した場合にコマンドを停止するときは,上記のpsコマンドの実行結果に出力されるプロセスIDを指定してOSのkillコマンドを実行するか,このコマンドを実行したコマンドプロンプトで,Ctrl+Cキーを押してください。
- このコマンドを自動で実行する場合は,DocumentSpace構成定義ファイル(docspace.ini)のDbLockWatcherエントリに「Accept」を設定します。DbLockWatcherエントリの指定がないと,自動では実行されません。DocumentSpace構成定義ファイル(docspace.ini)の詳細は,「4.2 DocumentSpace構成定義ファイル(docspace.ini)」を参照してください。
- このコマンドを手動で実行する場合,コマンドを実行した時刻以降に出力されるデッドロック情報およびタイムアウト情報が監視の対象になります。