スポンサーサイト

--年--月--日 --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

8.5.2 - Domino Diagnostic Probe (DDP)

2010年08月17日 20:08

 さて、8.5.2 が発表されリリースされる機能が確定したこともあるので、このブログでも8.5.2新機能の紹介をしようと思いますが、色々な方が紹介しているだろうと思うので私はPD関連の拡張をまずは紹介しようと思います。

8.5.2ではDomino Diagnostic Probe(DDP)と言うツールが同梱されています。ファイルの実態で言うと、プログラムディレクトリ上にある dbopen.jar と言うものです。
このJarファイルを利用してDBを定期的生死確認をし、指定された値よりも時間がかかるようだったらNSD実行をします。

試しにコマンドプロンプトで Domino 8.5.2のプログラムディレクトリに移動し、以下のコマンドを実行してみてください。

.\jvm\bin\java.exe -jar .\dbopen.jar -d names.nsf


こんな出力が出ます。
「quit」と入力すると終了します。
C:\Lotus\Domino\8.5.2>jvm\bin\java.exe -jar .\dbopen.jar -d names.nsf
08/13/2010 2:00:49 午後 Opening database names.nsf took a total of 0.594 seconds
08/13/2010 2:01:50 午後 Opening database names.nsf took a total of 0.438 seconds
08/13/2010 2:02:50 午後 Opening database names.nsf took a total of 0.531 seconds
//
08/13/2010 2:51:55 午後 Opening database names.nsf has taken 30.188 seconds. This exceeds the set threshold of 30.0 seconds.
08/13/2010 2:51:55 午後 Running NSD...

08/13/2010 2:52:07 午後 Opening database names.nsf took a total of 42.641 seconds
08/13/2010 2:54:40 午後 NSD completed with exit status 0
08/13/2010 2:55:42 午後 Opening database names.nsf took a total of 0.641 seconds
08/13/2010 3:30:23 午後 Opening database names.nsf took a total of 0.5 seconds
quit
08/13/2010 3:48:04 午後 Shutdown in progress...

途中で30秒の閾値を超えてNSDが取得されたのがわかります。
このときサーバーのログを見ても分かりますが、サーバーIDでDBを開くので、最低でもサーバーIDに対して読者権限を与えておく必要があります。

UNIXプラットフォームの場合は以下のように実行します。
/opt/ibm/lotus/bin/java -jar /opt/ibm/lotus/bin/dbopen.jar -d names.nsf



-helpを使うと、コマンドラインヘルプが出てきます。(デフォルト値の情報だけ追加しました)
コマンドラインヘルプ
C:\Lotus\Domino\8.5.2>jvm\bin\java.exe -jar .\dbopen.jar -help

Usage: java -jar dbopen.jar [-options]

Where options are:
-database Database to open. i.e. mail/test.nsf 必須
-threshold Run NSD if DB open takes longer than threshold. (seconds) デフォルト 10
-polling Specify at what frequency the database is polled to open. (seconds) デフォルト 60 
-nsdoptions Options to pass to NSD. Must be in quotes. i.e. "-nomecheck -stacks" デフォルト ALL
-outfile Print out put to log file specified (also prints to display).
Must be surrounded in quotes if path contains 'space' character(s).
-help Display this help message.


-database [-d]、-polling[-p]、-threshold[-t] のように一部省略形も使うことが出来ます。
-t や -p は問題や負荷に応じて使い分ける必要がありそうですね。

なお、現在以下のことが出来ませんのであらかじめご注意ください。

・ ユーザーIDを指定してデータベースを開く(常にサーバーIDになります)
・ helpディレクトリの下にあるファイル(例: help\help85_designer.nsf)をProbeすることが出来ない
  (問題報告番号 HNAA88AAHX)
・ 検出時にNSD以外のファイルを実行することが出来ない

ただ、このくらいのアイディアでいいなら、改良版を作れてしまう人もいるのではないですかね。
作ったらこのブログでも是非紹介するので教えてください (ネタとして面白いので)

・ Java APIを使用(ローカルアクセス)して、指定した時間ごとにローカルサーバーと指定したDBにアクセスする
  →開くまでの時間を測定し、閾値を超えていないか確認する
     →閾値を超えた接続時間になったら、指定した処理(NSDや指定した実行ファイル、サーバーコマンドなど)
  → ファイルが存在しない場合とアクセス権が足りない場合はエラーを返す
  → Exception が発生した場合もオプションによって指定した処理を実行する


DDPもサポートシーンではサーバーが一瞬だけスローダウンしたり、瞬断するような問題の調査で今以上に有効なデータが取れるようになるといいな、と思っています。


コメント

  1. やの | URL | -

    Re: 8.5.2 - Domino Diagnostic Probe (DDP)

    Windowsのタスクで定期的に
    show stat mail.waiting
    の出力を見て一定以上ならメールで通知するというバッチを走らせています。2回連続で閾値を上回ったらと言う条件にしてあるのと、一日何度でも検出してくれるというあたりが、統計イベントハンドラよりいい点です。また、場合によっては、コンソールコマンドを出すようにもしてあります。

コメントの投稿

(コメント編集・削除に必要)
(管理者にだけ表示を許可する)

トラックバック

この記事のトラックバックURL
http://hnagasim.blog8.fc2.com/tb.php/348-93cb4812
この記事へのトラックバック


最新記事


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。