2020年1月30日木曜日

エラー出力関数

こんにちは

ソフトな道をほのぼのと今日も歩きます。


Linuxにおけるアプリ開発をしています。


エラー出力をどうするかを検討しています。


ターミナル上に表示するのと、syslogを行いたいのですが、


あとで面倒な思いをしたくないので関数を作成して、


その中で、必要に応じて変更していけば、作業効率はいいと思いました。


以下載せておきます。


void PRINT_ERR_Message(int rtc, char* file, int line, char* message)

{

    syslog(LOG_ERR, "Error: 0x%x %s (%s %d) \n", rtc,message,file,line );

    printf("Error: 0x%x %s (%s %d) \n", rtc,message,file,line);

}

[使用例]

 PRINT_ERR_Message(rtc, __FILE__, __LINE__ , "正常終了");

 PRINT_ERR_Message(rtc, __FILE__, __LINE__ , "");

[結果]

 Error: 0x0 正常終了 (./bios/main.c 102)

 Error: 0x0  (./bios/main.c 104)

 

 syslog内を見てみましょう。

 cat /var/log/syslog | tail -10

   Jan 1 00:01:05 localhost : Error: 0x0 正常終了 (./bios/main.c 102)

   Jan 1 00:01:05 localhost : Error: 0x0 (null) (./bios/main.c 103)

   Jan 1 00:01:05 localhost : Error: 0x0  (./bios/main.c 104)


以上です。


[環境]

私の使用環境は VMware 上でUbuntu14.04を使用しています。


0 件のコメント:

コメントを投稿