ページの先頭行へ戻る
Big Data Integration ServerV1.4.0 検索編アプリケーション開発ガイド
FUJITSU Software

10.1.5 C APIの関数情報

アプリケーションから呼び出された関数の情報は、アプリケーションからの呼出し時、復帰時、および関数の実行でエラーが発生したときに出力されます。


出力形式

APIスナップは、CSV形式で出力します。

以下に、出力レベルごとの出力形式を説明します。


レベル1

関数呼出し時

プログラム名,コネクションハンドルID,スレッドID,日付,時間,Call,関数名

関数復帰時

プログラム名,コネクションハンドルID,スレッドID,日付,時間,Return,関数名,関数実行時間,復帰値,,性能情報

エラー復帰時

プログラム名,コネクションハンドルID,スレッドID,日付,時間,Error,関数名,関数実行時間,復帰値,エラー詳細文字列,性能情報

レベル2

関数呼出し時

プログラム名,コネクションハンドルID,スレッドID,日付,時間,Call,関数名,,,入力パラメタ情報

関数復帰時

プログラム名,コネクションハンドルID,スレッドID,日付,時間,Return,関数名,関数実行時間,復帰値,出力パラメタ情報,性能情報

エラー復帰時

プログラム名,コネクションハンドルID,スレッドID,日付,時間,Error,関数名,関数実行時間,復帰値,エラー詳細文字列,性能情報

出力内容

以下に出力される項目と内容を説明します。


表10.3 C APIの関数情報の出力内容の一覧

出力項目

内容

出力レベル

レベル1

レベル2

プログラム名

呼出し元プログラムの名前を表示します。

コネクションハンドルID

コネクションハンドルのIDを出力します。
コネクションハンドルの割当て時にShunAllocHandle関数が返す値です。

スレッドID

スレッドIDを出力します。

日付

関数呼出しの開始/終了の日付を“年/月/日”の形式で出力します。

時間

関数呼出しの開始/終了の時間を“時:分:秒.ミリ秒”の形式で出力します。

Call
Return
Error

“Call”:関数呼出し時の情報であることを示します。
“Return”:関数復帰時の情報であることを示します。
“Error”:関数の実行時にエラーが発生したことを示します。

関数名

呼び出されたC APIの関数名を出力します。

関数実行時間

関数呼出しから復帰までにかかった時間を出力します。単位は秒です。

復帰値

復帰値を出力します。
“SHUN_SUCCESS”:関数が正常に終了したことを示します。
“SHUN_ERROR”:関数の実行時に問題が検出されたことを示します。

エラー詳細文字列

関数呼出しでエラーが発生した場合の詳細文字列を出力します。
詳細文字列が含まれていない場合は、本項目は出力しません。

入力パラメタ情報

関数呼出し時の入力パラメタ情報(パラメタの型、値)を以下の形式で出力します。

  • (パラメタの型)値

パラメタの型が、ハンドルや構造体のポインタの場合は、以下の形式で出力します。

  • (パラメタの型)値[値の16進数表現]

×

出力パラメタ情報

関数復帰時の出力パラメタ情報(パラメタの型、値)を以下の形式で出力します。

  • (パラメタの型)値

出力パラメタがない場合は、本項目は出力されません。

×

性能情報

性能ログに出力されている依頼番号(Shunsakuシステム内で一意な番号)を出力します。(注1)
依頼番号は、conductorおよびdirectorで採番されます。(注2)

○(注2)

○(注2)

○:出力される項目
×:出力されない項目

注1) 性能ログの出力内容については、“導入・運用ガイド”の“性能ログの出力情報”を参照してください。
注2) 性能情報を出力したい場合は、API用動作環境ファイルのPfmLogパラメタの設定が必要です。


出力例

以下に、出力例を出力レベルごとに示します。


レベル1

正常終了時

"sample_hit_count",9449912,2820,"2006/10/22","11:58:10.380","Call","ShunConnect"
"sample_hit_count",9449912,2820,"2006/10/22","11:58:10.380","Return","ShunConnect",0.015,"SHUN_SUCCESS",,"42d234c100000100"

異常終了時

"sample_hit_count",9449912,3540,"2006/10/22","14:34:37.270","Call","ShunConnect"
"sample_hit_count",9449912,3540,"2006/10/22","14:34:38.286","Error","ShunConnect",1.016,
"SHUN_ERROR","shn30654u:Either the director or the conductor has not been started, or the port number is incorrect. <ShunConnect>",

レベル2

正常終了時

"sample_hit_count",9449912,3116,"2006/10/22","11:58:19.661","Call","ShunConnect",,,"(SHUNHCON)3554328[00363C18] (char*)DirSvr1 (int)23101 (char*)shunsakuFile1"
"sample_hit_count",9449912,3116,"2006/10/22","11:58:19.661","Return","ShunConnect",0.015,"SHUN_SUCCESS","","42d234c100000100"

異常終了時

"sample_hit_count",9449912,3540,"2006/10/22","14:34:37.270","Call","ShunConnect",,,
"(SHUNHCON)3427440[00344C70] (char*) localhost (int)10007 (char*)file1"
"sample_hit_count",9449912,3540,"2006/10/22","14:34:38.286","Error","ShunConnect",1.016,
"SHUN_ERROR","shn30654u:Either the director or the conductor has not been started, or the port number is incorrect. <ShunConnect>",

ポイント

  • 文字列項目は二重引用符(")で囲みます。

  • 数値項目は二重引用符(")で囲みません。


参考

採取したログファイルは、コネクションハンドルIDでフィルタを掛けることにより、コネクションごとの操作を時系列でトレースすることが可能です。