IBM Support

Lotus Domino for IBM i: サーバー動作中に NSD ログを取得する方法

Question/Answer


Question

IBM i (旧名称:i5/OS、iSeries、AS/400) 対応版の Lotus Domino でハングアップやスローダウンの問題が発生しました。

IBM i 対応版の Lotus Domino で、障害解析のために必要な NSD ログまたは NSD ログに相当するログを取得する方法を教えてください。

Answer

Lotus Domino のリリースにより方法が異なります。お使いのリリースに合わせた方法でログを取得してください。

Lotus Domino 8.0.1以降 および、7.0.4、7.0.3 FP1、7.0.2 FP3:

以下のコマンドで NSD ログを取得することができます。

 RUNDOMCMD <servername> CMD(CALL QDOMINO901/NSD) BATCH(*NO)

※<servername> には、取得する対象のサーバー名(共通名部分のみ)を入力してください。
※これは 9.0.1 での例です。QDOMINO901 は、実際の使用環境の Lotus Domino のライブラリ名に置き換えてください。Lotus Domino のライブラリは「QDOMINO」の後に、バージョン番号とメンテナンスリリースの番号を 3 ケタで表した数字を加えたものになります。

RUNDOMCMD の実行前に環境変数「NOTES_NSD_MEMCHECK=1」をあらかじめ設定しておくことで、共有メモリやデータベースの使用状況を NSD ログに含めることができます。この設定を行うにはRUNDOMCMD の実行前に以下のコマンドを実行してください。

 ADDENVVAR ENVVAR(NOTES_NSD_MEMCHECK) VALUE(1)

Lotus Domino 7.0.2 FP3 および 7.0.3 FP1 を日本語版の i5/OS 上で使用している場合、NSD ログが途中で切れてしまう問題が発生するため、i5/OS のオプションで 2 次言語として英語を事前にインストールしておく必要があります。
参照:「Lotus Domino for i5/OS: NSD ログが正常に出力されない」(Technote #1467109)

Lotus Domino 7.0.3以降および、6.5.6、6.5.5:

Domino コンソールの入力に反応がある状態であれば、以下のコマンドを Domino コンソールに入力することで NSD ログを取得することができます。

 load nsd

notes.ini にパラメータ「NSD_RUN_MEMCHECK=1」をあらかじめ設定していれば、共有メモリやデータベースの使用状況を NSD ログに含めることができます。

Domino コンソールの入力に反応がない状態の場合は、dmpdomsvrc コマンドおよび dmpjobclls コマンドを使用して、NSD ログに含まれる情報のうちスタックトレースのみを取得することができます。
参照:「i5/OS (iSeries) 版 Lotus Domino:DMPDOMSVRC と DMPJOBCLLS によるスタックトレースの出力方法」(Technote #1466638)


Lotus Domino 6.5.4 以前:

dmpsvrstks コマンドや dmpcllstk コマンドを事前に入手、インストールする必要があります。dmpsvrstks コマンドは Lotus Domino 6.5.5/7.0 以降に付属する dmpdomsvrc コマンドに、dmpcllstk コマンドは Lotus Domino 6.5.5/7.0 以降に付属する dmpjobclls コマンドに対応しています。ただし、dmpsvrstks コマンドは日本語に対応していないため、2 次言語という i5/OS のオプションで英語を事前にインストールしておく必要があります。
参照:「iSeries 版 Lotus Domino:DMPSVRSTKS と DMPCLLSTK によるスタックトレースの出力方法」(Technote #1465679)

なお、Lotus Domino 6.5.4 で、かつ、Domino コンソールの入力に反応がある状態であれば、以下のコマンドを Domino コンソールに入力することで、動作中の Lotus Domino サーバーの詳細なメモリ使用状況を出力することができます。

 load memcheck -k curr -d err -v 2


補足情報

コマンドごとに対応リリースや取得できる情報、取得できる条件をまとめると、下表の通りです。

コマンド RUNDOM
CMD
load nsd load mem
check
dmpdom
svrc
dmpjob
clls
dmpsvr
stks
dmpcll
stk
対応リリース 8.0.1 以降
-
-
7.0.2 FP3、7.0.3 FP1
○ *1
-
-
7.0 以降
×
-
-
6.5.5 以降
×
-
-
6.5.4
×
×
○ *3
○ *3
○ *1 *2
○ *2
6.5.3 以前
×
×
×
○ *3
○ *3
○ *1 *2
○ *2
R5.0.x
×
×
×
×
×
○ *1 *2
○ *2
取得できる情報 全タスク/全コマンドのスタックトレース
×
×
×
指定したタスクのスタックトレース
×
共有メモリの状況
○ *4
○ *4
×
×
×
×
Domino コンソールの反応がない時の実行
×
×


(凡例)
○: 対応・実行可能です。
×: 非対応・実行不可能です。
- : 対応していますが別の方法をお勧めします。

(注釈)
*1: あらかじめ i5/OS の二次言語として英語をインストール・設定する必要があります。

*2: あらかじめツールを入手して、インストールする必要があります。

*3: マルチバージョニング機能を使用して 6.5.5 以降の Lotus Domino が同じ OS 上にインストールされていれば、Lotus Domino 6.5.4 以前のサーバーに対しても Lotus Domino 6.5.5 以降に付属するコマンドを実行することができます。

*4: notes.ini に「NSD_RUN_MEMCHECK=1」が設定されている必要があります。
パラメータ「NSD_RUN_MEMCHECK=1」は Domino サブコマンド「set config NSD_RUN_MEMCHECK=1」で動的に設定可能ですが、設定が反映されるのは Lotus Domino 再起動後になります。

Related information

Domino MEMCHECK on the IBM i platform
Lotus Domino for i5/OS: NSD ログが正常に出力されない
i5/OS (iSeries) 版 Lotus Domino:DMPDOMSVRC と DMPJOBCLLS
iSeries 版 Lotus Domino:DMPSVRSTKS と DMPCLLSTK によるスタックトレ

Historical Number

729888

Document information

More support for: IBM Domino

Component: NSD

Software version: 6.0, 6.5, 7.0, 8.0, 8.5, 9.0

Operating system(s): IBM i

Reference #: 1463159

Modified date: 30 October 2018