システム開発ブログ

【Access VBA】ログ書き込みモジュール

小佐野

小佐野 (2011年5月30日 16:25)
流通システム部 / Access

みなさん、こんにちは。

AccessVBAで汎用的に使えるログ書き込みモジュールを作成してみました。
ログレベルの設定、ファイル名、ログのレイアウトを外部ファイル(iniファイル)で指定できるようになっています。
log_module.zip

使用方法はモジュールをインポートし、iniファイルをAccessと同階層に配置するだけです。
ログ設定のiniファイルは以下の様になっています。

log.ini
;log.ini
;Level = ログレベル
; 1 = DEBUG
; 2 = INFO
; 3 = WARN
; 4 = ERROR
; 5 = FATAL
;File = ファイル名
;Layout = レイアウト
; %yyyy = 年(西暦)
; %MM   = 月
; %dd   = 日
; %HH   = 時
; %mm   = 分
; %ss   = 秒
; %level   = ログレベル
; %message = メッセージ
; %n       = 改行

[log]
Level = 1
File = log\log_%yyyy%MM%dd.txt
Layout = [%yyyy-%MM-%dd %HH:%mm:%ss] %level %message%n

以下はサンプルコードです。
Public Sub test_log()

    Logger.WriteLog "DEBUGレベルでログを書き込みます。", LEVEL_DEBUG
    Logger.WriteLog "INFOレベルでログを書き込みます。", LEVEL_INFO
    Logger.WriteLog "WARNレベルでログを書き込みます。", LEVEL_WARN
    Logger.WriteLog "ERRORレベルでログを書き込みます。", LEVEL_ERROR
    Logger.WriteLog "FATALレベルでログを書き込みます。", LEVEL_FATAL

End Sub

以下の様に書き込まれます。
[2011-05-30 15:05:56] DEBUG DEBUGレベルでログを書き込みます。
[2011-05-30 15:05:56] INFO INFOレベルでログを書き込みます。
[2011-05-30 15:05:56] WARN WARNレベルでログを書き込みます。
[2011-05-30 15:05:56] ERROR ERRORレベルでログを書き込みます。
[2011-05-30 15:05:56] FATAL FATALレベルでログを書き込みます。
ERRORレベルのみ出力したい場合は次の様に設定します。
[log]
Level = 4
この場合、以下の様に書き込まれます。
[2011-05-30 15:05:56] ERROR ERRORレベルでログを書き込みます。
[2011-05-30 15:05:56] FATAL FATALレベルでログを書き込みます。

システムのトラブル解決を承ります。すぐにシステムリフォームを体験できますシステム診断・システムリフォームのお申し込みはこちらから。

システム開発ブログ

Twitterでilovex_officialをフォローしてください

最近の記事

カテゴリー

部署

月別アーカイブ

以前の部署別ブログ

ページのトップ