2011-12-26 6 views
4

私は、CおよびC++プログラミング言語で書かれたライブラリの多くを見てきました。これらの言語では、各ライブラリに独自のデバッグ印刷方法があります。私が見た中で最も一般的なのは次のとおりです。このデバッグプリントをライブラリに置くための標準的な方法はありますか?

1> for error prints 
2> for warning prints 
3> for debug values prints 
4> for getting all this print on stdout/stderr 
5> for getting all this print on logfile 

もう一つの最良の例は、場合、彼らは

デバッグレベルのメカニズム

level-1 for error 
level-2 for warning 
level-3 for debug 
level-4 for info 
level-5 for log 

を提供しているGstremerライブラリであるため

ユーザーがフラグを設定しますユーザーはレベル5を通過し、すべてのプリントがそこにあります。彼が2を設定すると、エラーと警告だけがそこにあります。

これで、ライブラリ/プロジェクトでこのようなデバッグプリントの標準またはそれ以上の方法がありますか?

+0

こんにちは、私は自分のライブラリのロギングフレームワークを設計する予定です。関連情報があればそれを共有することができれば便利です。 –

答えて

4

似ているシステムはどれも合理的です。私が知っているデファクトスタンダードはありません。出力を異なるファイルに送信する関数を提供することができます。より複雑なシステムでは、異なるサブシステムを認識し、異なるサブシステムに異なるデバッグレベルを設定することができます。しかし、これはかなり珍しいことであり、ライブラリが分かりやすくサブシステム化されているかどうかによって異なります。

3

標準的な方法はありません。各ライブラリまたはプロジェクトは独自の方式を採用しています。
あなたが言及したスキームは、多くの実装で最も一般的に使用されています。

関連する問題