スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

8.9.3 SQL実行時間警告情報ファイルの出力

<この項の構成>
(1) SQL実行時間警告情報ファイルの参照方法
(2) SQL実行時間警告情報の出力形式

(1) SQL実行時間警告情報ファイルの参照方法

SQL実行時間警告情報は,テキストエディタなどテキストファイルを参照できるソフトウェアで参照できます。

なお,HiRDB/パラレルサーバの場合は,警告対象となったSQLを発行するUAPが接続するフロントエンドサーバがあるサーバマシンに出力されます。

備考
  • 使用中のSQL実行時間警告情報ファイルを知りたい場合,OSのコマンドなど(lsコマンドなど)でファイルの最終更新日時を調べてください。最終更新日時の新しいファイルが使用中のSQL実行時間警告情報ファイルです。
  • HiRDBを開始した後の出力先ファイルは,最終更新日時が新しいファイルになります。
  • SQL実行時間警告情報はファイルの最終位置から追加書きされるため,SQL実行時間警告情報はファイル内で時系列順に表示されます。
  • SQLの実行後,SQL実行時間警告情報ファイルはクローズされているため,SQLが実行されていないときにOSのコマンドを利用してバックアップを取得したり,ファイルを参照したりしても,書き込み中のファイルを使用することはありません。また,SQLの実行中であっても出力先でないファイルであれば,書き込み中のファイルを使用することはありません。

(2) SQL実行時間警告情報の出力形式

SQL実行時間警告情報の出力形式(符号なし整数でPDCWAITTIMEに対する比率を設定した場合)を次に示します。

** SQL CWAITTIME WARNING INFORMATION 07-01    2002/07/04 14:32:22 **
  REASON(01)
  CWAITIME(600) CWAITTIME_WRN_PNT(70) CWAITTIME_WRN_TIME(420)
 
* UAP INFORMATION *
  UAP_NAME(userprog1) CLTPID(408) 
  IP_ADDR(196.12.42.146) SERVICE_NAME(service1)
  USERID(hiuser01) START_TIME(2002/07/03 20:24:42)
 
* SERVER INFORMATION *
  HOST(host03) PORT(1146)
  SVRNAME(fes1) SVRPID(905)
 
* SQL INFORMATION *
  OPTIMIZE_LEVEL(132768) ADDITIONAL_OPTIMIZE_LEVEL(3)
  ISOLATION_LEVEL(2)
  SQLOBJ_SIZE(2608) SQLCOUNT(1)
 
CNCTNO     SQL-       OP   SEC  SQL   SQL   START-TIME          END-TIME EXEC-
           COUNTER    CODE NO   CODE  WARN                               TIME
---------- ---------- ---- ---- ----- ----- ------------------- -------- -----
        10         10 AUI2 1890     0 -0000 2002/07/04 14:32:22 14:39:30   428
 
* SQL MESSAGE *
  "*" [*]
 
* SQL STATEMENT *
  DELETE FROM ZAIKO WHERE ZNO=1
 

SQL実行時間警告情報の出力形式(符号なし10進数でPDCWAITTIMEに対する比率を設定した場合,又は警告をファイルに出力する契機となる時間を設定した場合)を次に示します。

** SQL CWAITTIME WARNING INFORMATION 07-01    2002/07/04 14:32:22.100000 **
  REASON(01)
  CWAITIME(600) CWAITTIME_WRN_PNT(70.001000) CWAITTIME_WRN_TIME(420.006000)
 
* UAP INFORMATION *
  UAP_NAME(userprog1) CLTPID(408) 
  IP_ADDR(196.12.42.146) SERVICE_NAME(service1)
  USERID(hiuser01) START_TIME(2002/07/03 20:24:42)
 
* SERVER INFORMATION *
  HOST(host03) PORT(1146)
  SVRNAME(fes1) SVRPID(905)
 
* SQL INFORMATION *
  OPTIMIZE_LEVEL(132768) ADDITIONAL_OPTIMIZE_LEVEL(3)
  ISOLATION_LEVEL(2)
  SQLOBJ_SIZE(2608) SQLCOUNT(1)
 
CNCTNO     SQL-       OP   SEC  SQL   SQL   
           COUNTER    CODE NO   CODE  WARN  
---------- ---------- ---- ---- ----- ----- 
        10         10 AUI2 1890     0 -0000 
 
START-TIME                 END-TIME        EXEC-TIME
 
-------------------------- --------------- ------------
2002/07/04 14:32:22.122222 14:39:30.822223   428.700001
 
* SQL MESSAGE *
  "*" [*]
 
* SQL STATEMENT *
  DELETE FROM ZAIKO WHERE ZNO=1
 

SQL実行時間警告情報の出力内容を次の表に示します。

表8-10 SQL実行時間警告情報の出力内容

出力項目 ヘッダ名 説明 最大出力
文字数
(バイト)
出力可否
条件1 条件2
HiRDBのバージョン SQL
CWAITTIME
WARNING
INFORMATION
HiRDBのバージョンをVV-RR-ZZの形式で表示します。ZZがない場合はZZを表示しません。 8
出力日時 SQL実行時間警告情報ファイルの出力日時を次のどちらかの形式で表示します。
YYYY/MM/DD hh:mm:ss
(YYYY:年,MM:月,DD:日,hh:時,mm:分,ss:秒)
YYYY/MM/DD hh:mm:ss.uuuuuu
(YYYY:年,MM:月,DD:日,hh:時,mm:分,ss:秒,uuuuuu:マイクロ秒)
19又は26
理由コード REASON SQL実行時間警告情報ファイルの出力理由を表示します。
  • 00:UAPの強制終了などでサーバプロセスが強制終了しました。
  • 01:SQLの実行時間が設定した時間以上になりました。
2
PDCWAITTIMEオペランドの値 CWAITIME クライアント環境定義のPDCWAITTIMEオペランドの値を表示します(単位:秒)。 5
オペランドに指定した比率,又は時間 CWAITTIME_
WRN_PNT
PDCWAITTIMEWRNPNTオペランド又はpd_cwaittime_wrn_pntオペランドに指定した比率(単位:%),又は時間(単位:秒)を表示します。これらのオペランドの優先度に従い適用された値を表示します。 2又は12
警告時間 CWAITTIME_
WRN_TIME
警告情報の出力条件となる時間※1を表示します(単位:秒)。 5又は12
UAP名称 UAP_NAME クライアント環境定義のPDCLTAPNAMEオペランドに指定したUAP名称を表示します。 30
プロセス番号 CLTPID クライアントのプロセス番号を表示します。Type4 JDBCドライバから接続している場合は,0が表示されます。 10
IPアドレス IP_ADDR UAPを実行したクライアントのIPアドレスを表示します。 15
サービス名称 SERVICE_
NAME
UAPの種類によって,表示されるサービス名称が次のようになります。
  • OpenTP1のUAPの場合
    OpenTP1のSUP(サービス利用プログラム)がSPP(サービス提供プログラム)に要求したサービスの場合,又はTP1/Message ControlがMHP(メッセージ処理プログラム)に要求したサービスの場合は,該当するサービス名称を表示します。
    上記以外の場合は,*を表示します。
  • OpenTP1のUAP以外の場合
    *を表示します。
31
認可識別子 USERID コネクトユーザ名を表示します。 8
UAP開始時間 START_TIME UAPの実行開始時刻をYYYY/MM/DD hh:mm:ssの形式で表示します(YYYY:年,MM:月,DD:日,hh:時,mm:分,ss:秒)。 19
ホスト名 HOST サーバプロセスが稼働しているホスト名を表示します。 30
ポート番号 PORT サーバプロセスの通信ポート番号を表示します。 5
サーバ名 SVRNAME サーバ名を表示します。HiRDB/シングルサーバの場合はシングルサーバ名を,HiRDB/パラレルサーバの場合はフロントエンドサーバ名を表示します。 8
プロセス番号 SVRPID サーバプロセスのプロセス番号を表示します。 10
SQL最適化オプション OPTIMIZE_
LEVEL
SQL最適化オプションの値を10進形式で表示します。取得できない場合は*を表示します。 10
SQL拡張最適化オプション ADDITIONAL_
OPTIMIZE_LEVEL
SQL拡張最適化オプションの値を10進形式で表示します。取得できない場合は*を表示します。 10
データ保証レベル ISOLATION_
LEVEL
データ保証レベルの値を表示します。取得できない場合は*を表示します。 10
SQLオブジェクトのサイズ SQLOBJ_SIZE SQLオブジェクトのサイズ(単位:バイト)を表示します。取得できない場合は*を表示します。 10 ×
SQLの処理行数 SQLCOUNT SQLの処理行数(SELECT文で取り出した行数など)を表示します。取得できない場合は*を表示します。
出力内容については,マニュアル「HiRDB Version 8 SQLリファレンス」のSQLERRDを参照してください。
10 ×
コネクト通番 CNCTNO サーバがCONNECTを受け付けるごとにカウントしている通番を表示します。 10
SQLカウンタ SQL-COUNTER SQL文を受け付けるごとにカウントしている通番を表示します。取得できない場合は*を表示します。 10 ×
オペレーションコード OP CODE SQLに対応するオペレーションコードを表示します。取得できない場合は*を表示します。 4 ×
セクション番号 SEC NO SQLに対応するセクション番号を表示します。取得できない場合は*を表示します。 4 ×
SQLCODE SQL CODE SQLを実行した結果のSQLCODEを表示します。取得できない場合は*を表示します。 5 ×
警告情報 SQL WARN 警告情報を16進※2で表示します。取得できない場合は*を表示します。 5 ×
SQL開始時間 START-TIME クライアントからのSQLの実行要求を受け付けた日時を次のどちらかの形式で表示します。
YYYY/MM/DD hh:mm:ss
(YYYY:年,MM:月,DD:日,hh:時,mm:分,ss:秒)
YYYY/MM/DD hh:mm:ss.uuuuuu
(YYYY:年,MM:月,DD:日,hh:時,mm:分,ss:秒,uuuuuu:マイクロ秒)
取得できない場合は*を表示します。
19又は26
SQL終了時間 END-TIME クライアントからの要求に対する処理が終了した時刻を次のどちらかの形式で表示します。
hh:mm:ss(hh:時,mm:分,ss:秒)
hh:mm:ss.uuuuuu(hh:時,mm:分,ss:秒,uuuuuu:マイクロ秒)
サーバプロセスが強制終了した場合は,処理を中断した時刻を表示します。
8又は15
SQL実行時間 EXEC-TIME クライアントからの要求に対する処理時間を表示します(単位:秒)。サーバプロセスが強制終了した場合は,処理を中断するまでの時間を表示します。取得できない場合は*を表示します。 5又は12
SQLメッセージ SQL MESSAGE SQLの実行中に出力されたメッセージを表示します。取得できない場合は*を表示します。 254 ×
[ ]内の情報はシステムの保守情報です。取得できない場合は*を表示します。 21
SQL文 SQL STATEMENT SQL文を表示します。SQL文中に注釈(コメント)や,SQL最適化指定をしている場合は,それらも含めて表示します。取得できない場合は*を表示します。 2,000,000

(凡例)
条件1:SQLの実行時間が設定した時間以上になった場合
条件2:SQLの実行時間が設定した時間以上になる前にサーバプロセスが強制終了した場合
○:常に出力されます。
△:出力されないことがあります。
×:出力されません。

注※1
警告時間は次に示す計算式から求められます。
 
  • 符号なし整数でPDCWAITTIMEに対する比率を設定した場合
警告時間=MAX(↓(a×b)÷100↓,1)
a:PDCWAITTIMEオペランドの値
b:PDCWAITTIMEWRNPNTオペランド又はpd_cwaittime_wrn_pntオペランドの値(これらのオペランドの優先度に従い適用された値が代入されます)
 
  • 符号なし10進数でPDCWAITTIMEに対する比率を設定した場合
警告時間=(a×b)÷100
a:PDCWAITTIMEオペランドの値
b:PDCWAITTIMEWRNPNTオペランド又はpd_cwaittime_wrn_pntオペランドの値(これらのオペランドの優先度に従い適用された値が代入されます)
ただし,警告時間は小数第6位まで有効です。小数第7位以下は切り捨てられます。
 
  • 警告をファイルに出力する契機となる時間を設定した場合
警告時間=警告をファイルに出力する契機となる時間の絶対値

注※2
SQLWARN0〜SQLWARNFの各警告情報の左から1ビットを割り当て,警告フラグが設定されているものは1,設定されていないものは0として16ビットの数値を求めます。この値を4けたの16進数値として表示します。一つ以上の警告フラグが設定されている場合は先頭にWを,警告フラグが設定されていない場合は−を表示します。

(例1)警告情報の内容が次に示す場合は,WC040が表示されます。
[図データ]

(例2)警告情報の内容が次に示す場合は,-0000が表示されます。
[図データ]