VS.NET 2008 Framework3.5 ロガーDLL
VS.NET Framework3.5用 の ログ出力するための DLL です。
デバッグ用ツールとしてログ出力用のクラスモジュールを作成し、長年使用しております。

この度、基底クラスのメソッドとプロパティを整理したラッパークラスで覆い、DLL化して公開することにしました。
※Microsoft.Build.Utilities の Logger クラスや Microsoft.VisualBasic.Logging の Log クラスではなく、
 デバッグ用のテキストファイル(Shift-JIS)出力ツールです。


公開メンバと機能
オブジェクト・ブラウザ
pC_IN 固定文字列 " (IN ▽) "
p_strOUT 固定文字列 " (OUT△) "
pC_LOGOUTMIN 数値定数 出力レベル = 0I
pC_LOGOUTMDL 数値定数 出力レベル = 5I
pC_LOGOUTMAX 数値定数 出力レベル = 9I
New コンストラクタ
Dispose デストラクタ
pS_Logging ログ出力メソッド
pS_Logging_AppInfo アプリ情報のログ出力メソッド
prpOutLevelLimit ログ出力レベルの制限値 プロパティ
prpDairySw 日付管理スイッチ プロパティ
prpLogFolderPath ログ出力フォルダ プロパティ
prpi32LogMaxSize ログサイズMAX値 プロパティ
prpTransitions ログ履歴MAX値 プロパティ
prpStackCounts ログのスタックNAX値 プロパティ

実質的には、「New」と「pS_Logger」メソッドの2個だけで使えます。



【 New コンストラクタ の引数 】
Optional ByVal i32DairySw_I As System.Int32 = 31I
0 より大きい時、日付(yyyymmdd)をログファイル名の先頭に付加
※現時点では、0 か 0 より大きいかの 判断のみ
Optional ByVal strFolderPath_I As System.String = "" ログ出力先パス
空文字の場合は、DLLのパス下の \Log フォルダに出力
出力先のフォルダが存在しなくても自動で作成する
Optional ByVal strFileNotExt_I As System.String = ""
ログファイル名(拡張子は付加しないこと)
※自動的に ".Log" を付加
空文字の場合は、「FtsLogger」
Optional ByVal i32MaxSize_I As System.Int32 = 1,000,000L
ログファイルのサイズ(Byte単位)
※ 1,000 〜 5,000,000バイト
Optional ByVal i32Transition_I As System.Int32 = 10I
ログの履歴数
※ 1 〜 100
Optional ByVal i32OutLevelMax_I As System.Int32 = 5I
ログ出力レベルの制限値
※ 0 〜 9
指定値以下のログを出力対象とする

9 を指定した時は、DLL自体の情報をログに出力する。


【 pS_Logging メソッド の引数 】
Optional ByVal strLogText_I As System.String = "" ロギング文字列
自動的に 日時を付加
空文字の場合は、日時のみを出力
※前後の半角空白は強制的にTrimする
Optional ByVal i32OutLevel_I As System.Int32 = 0I ログ出力レベル(0 〜 9)
※この値が 「ログ出力レベルの制限値」以下であれば出力
デバッグ中は、「ログ出力レベルの制限値」= 9 にしておき、
細かなデバッグ(ログ)のこの値を 9 にしておく。
デバッグが済んで「ログ出力レベルの制限値」= 5 にすれば、
最低限のソース修正でログの制限がかけられる。
Optional ByVal blnStackSw_I As System.Boolean = False False=スタック分もログ出力してスタックを空にする
True =ロギング文字列をメモリ上にスタックしておく
VB6版からの名残りの機能

スタック数の上限は 256個。256個を超えたら、勝手に出力する。
ログ出力の負荷が影響するようなシビアな通信のデバッグなどに使用。


【 pS_Logging_AppInfo メソッド の引数 】
Optional ByVal strFullPath_I As System.String = "" 指定ファイルのフルパス
指定ファイルのファイル情報をログ出力する
空文字の場合は、DLL自体のファイル情報
Optional ByVal i32OutLevel_I As System.Int32 = 0I ログ出力レベル(0 〜 9)
※この値が 「ログ出力レベルの制限値」以下であれば出力


【 prpOutLevelLimit プロパティ 】
Get 現在の「ログ出力レベルの制限値」
Set 「ログ出力レベルの制限値」を変更(0 〜 9)

他のプロパティは「ReadOnly」



使用方法
参照の追加
「参照の追加」で追加します。




ログの出力例
2010/11/10 17:19:54.594
         ************************************************************************
         フルパス :D:\Sample_FtsLogger\bin\Debug\FtsLogger.dll
         フォルダパス :D:\Sample_FtsLogger\bin\Debug
         OS Version :Microsoft Windows NT 5.1.2600 Service Pack 3
         File Version :1.0.0.5
         File MajorPart :1
         File MinorPart :0
         File PrivatePart :0
         File BuildPart :5
         Private Build :
         Special Build :
         FileDescription :FtsLogger
         LegalCopyright :Copyright c Faithrives Inc. 2010
         CompanyName :有限会社フェイスライブス
         Comments :
         InternalName :FtsLogger.dll
         Language :ニュートラル言語
         LegalTrademarks :
         Original FileName :FtsLogger.dll
         Product Name :FtsLogger
         Product Version :1.0.0.5
         Product MajorPart :1
         Product MinorPart :0
         Product PrivatePart:0
         Product BuildPart :5
         ************************************************************************
2010/11/10 17:19:54.672
         ************************************************************************
         フルパス :D:\Sample_FtsLogger\bin\Debug\Sample_FtsLogger.exe
         フォルダパス :D:\Sample_FtsLogger\bin\Debug
         OS Version :Microsoft Windows NT 5.1.2600 Service Pack 3
         File Version :1.0.0.0
         File MajorPart :1
         File MinorPart :0
         File PrivatePart :0
         File BuildPart :0
         Private Build :
         Special Build :
         FileDescription :Sample_FtsLogger
         LegalCopyright :Copyright c Faithrives Inc. 2010
         CompanyName :有限会社フェイスライブス
         Comments :
         InternalName :Sample_FtsLogger.exe
         Language :ニュートラル言語
         LegalTrademarks :
         Original FileName :Sample_FtsLogger.exe
         Product Name :Sample_FtsLogger
         Product Version :1.0.0.0
         Product MajorPart :1
         Product MinorPart :0
         Product PrivatePart:0
         Product BuildPart :0
         ************************************************************************
2010/11/10 17:19:54.750 [Form1.Form_Load](IN ▽)
2010/11/10 17:19:54.750 [Form1.Form_Load](OUT△)
2010/11/10 17:19:57.109 [Form1.Form_FormClosing](IN ▽)
2010/11/10 17:19:57.109 [Form1.Form_FormClosing](OUT△)
2010/11/10 17:19:57.141 [FtsLoggerWrap.Dispose](IN ▽)
2010/11/10 17:19:57.172 [FtsLoggerWrap.Dispose](OUT△)



ダウンロード
[FtsLogger.DLL Ver. 1.0.0.5 フリーソフト]
サンプルのソリューション付き


お問い合わせはこちらから