|
cmn-clib(CommonLibraryForC)
C言語共通ライブラリ
|
拡張ログ出力 共通関数 [詳解]
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <stdarg.h>#include <time.h>#include "cmnclib/Common.h"#include "cmnclib/CmnLog.h"#include "cmnclib/CmnTime.h"関数 | |
| CmnLogEx * | CmnLogEx_Create (const char *logFile, CMN_LOG_LEVEL level, const char *msgFile) |
| 拡張ログ出力関数初期化処理 [詳解] | |
| void | CmnLogEx_Free (CmnLogEx *log) |
| 拡張ログ出力共通関数終了処理 [詳解] | |
| void | CmnLogEx_Put (CmnLogEx *log, CMN_LOG_LEVEL level, const char *msg,...) |
| 拡張ログ出力 [詳解] | |
| void | CmnLogEx_PutByCode (CmnLogEx *log, CMN_LOG_LEVEL level, const char *msgCode,...) |
| 拡張ログ出力 [詳解] | |
| void | cmnLogEx_PutLog (CmnLogEx *log, CMN_LOG_LEVEL level, const char *msg, va_list args) |
| 拡張ログ出力(内部用関数) [詳解] | |
拡張ログ出力 共通関数
ログを指定ファイルに出力する。ログの出力形式はログメッセージ定義ファイルで定義できる。
ログメッセージ定義ファイルの構文は標準ログ出力共通関数を参照のこと。
<使用例>
— message.conf(メッセージログファイル) ------------------—
TEST01, テストログs
TEST02, テストd回目s
-------------------------------------------------------------—
・以下、ログ出力処理例
CmnLog_LogEx *log = CmnLog_InitEx("message.conf", CMN_LOG_LEVEL_DETAIL, "test.log");
if (log == NULL) return ;
CmnLog_PutEx(log, CMN_LOG_LEVEL_DETAIL, "TEST01", "です");
CmnLog_PutEx(log, CMN_LOG_LEVEL_STANDARD, "TEST02", 1, "です");
CmnLog_PutEx(log, CMN_LOG_LEVEL_DEBUG, "TEST01", "です");
CmnLog_EndEx(log);
・以下、test.logファイルへの出力例(CMN_LOG_LEVEL_DEGUBで指定したメッセージは、この場合出力されない)<BR> YYYY/MM/DD CODE=TEST01 : テストログです
YYYY/MM/DD CODE=TEST01 : テスト1回目です
| CmnLogEx* CmnLogEx_Create | ( | const char * | logFile, |
| CMN_LOG_LEVEL | level, | ||
| const char * | msgFile | ||
| ) |
拡張ログ出力関数初期化処理
ログメッセージ定義ファイルを読み込み、拡張ログ出力関数の使用準備をする。
拡張ログ出力関数を使用する前にこの関数をコールしなければならない。
また、拡張ログ出力関数の使用後は、CmnLogEx_Free()関数をコールすること。
標準ログ出力関数と異なり、複数のログ出力設定をすることが出来る。
| logFile | (I) ログを出力するファイルパスを指定する。 NULLを指定した場合は標準出力にログを出力する。 ファイルへの書き込みモードは、「追加書き込み」である。 |
| level | (I) ログ出力レベル。 指定可能な出力レベルについては、CmnLog_Init()関数を参照のこと。 |
| msgFile | (I) ログメッセージ定義ファイルへのパス。 定義ファイルを使用しない場合はNULLを指定する。 定義ファイルの構文は、CmnLog_Init()関数を参照のこと。 |
| void CmnLogEx_Free | ( | CmnLogEx * | log | ) |
拡張ログ出力共通関数終了処理
標準ログ共通関数の終了処理を行う。(メモリ領域解放処理)
標準ログ共通関数の使用を終えた時は、必ずこの関数を実行すること。
| log | (I/O) 拡張ログ情報へのポインタ |
| void CmnLogEx_Put | ( | CmnLogEx * | log, |
| CMN_LOG_LEVEL | level, | ||
| const char * | msg, | ||
| ... | |||
| ) |
拡張ログ出力
ログを出力する。出力先はCmnLog_InitEx()関数の引数fileに指定したファイル。
< ログ出力例>="">
yyyy/mm/dd[hh:mm:ss] [level] メッセージ本文
| log | (I) 拡張ログ情報構造体へのポインタ(CmnLog_InitEx()関数の戻り値) |
| level | (I) ログレベル。LoggerInitで指定されたログレベルと比較し、出力可否を決める。 |
| msg | (I) メッセージ文言 |
| ... | (I) メッセージ内に含まれるsやdの部分に対応する変数を指定する |
| void CmnLogEx_PutByCode | ( | CmnLogEx * | log, |
| CMN_LOG_LEVEL | level, | ||
| const char * | msgCode, | ||
| ... | |||
| ) |
拡張ログ出力
ログを出力する。出力先はCmnLog_InitEx()関数の引数fileに指定したファイル。
< ログ出力例>="">
yyyy/mm/dd[hh:mm:ss] [level] msgCodeに対応するメッセージ文言
| log | (I) 拡張ログ情報構造体へのポインタ(CmnLog_InitEx()関数の戻り値) |
| level | (I) ログレベル。LoggerInitで指定されたログレベルと比較し、出力可否を決める。 |
| msgCode | (I) メッセージコード |
| ... | (I) メッセージ内に含まれるsやdの部分に対応する変数を指定する |
| void cmnLogEx_PutLog | ( | CmnLogEx * | log, |
| CMN_LOG_LEVEL | level, | ||
| const char * | msg, | ||
| va_list | args | ||
| ) |
拡張ログ出力(内部用関数)
ログを出力する。
< ログ出力例>="">
yyyy/mm/dd[hh:mm:ss] [level] メッセージ本文
| log | (I) 拡張ログ情報構造体へのポインタ(CmnLog_InitEx()関数の戻り値) |
| level | (I) ログレベル。LoggerInitで指定されたログレベルと比較し、出力可否を決める。 |
| msg | (I) メッセージ文言 |
| args | (I) メッセージ内に含まれるsやdの部分に対応する変数を指定する |