2008/10/05
Perlで書く 2008.10.05 Vol.219
===================================================================== Perlで書く 2008.10.05 Vol.219 [WAZA]イベントログにメッセージを出力する http://www2u.biglobe.ne.jp/~MAS/perl/ ===================================================================== ●イベントログにメッセージを出力する Win32::EventLogモジュールを使います。 use strict; use warnings; use Win32::EventLog; my $source = 'myApplication'; # ソース my $elog = Win32::EventLog->new($source); my $event = { EventType => EVENTLOG_INFORMATION_TYPE, # 種類 EventID => 1, # イベントID Strings => '説明', # 説明 Data => 'DATA', # データ }; $elog->Report($event) or die "Reportに失敗しました。"; EventTypeには以下を設定します。 ┌─────────────┬────────┐ │設定値 │イベントログの値│ ├─────────────┼────────┤ │EVENTLOG_ERROR_TYPE │エラー │ │EVENTLOG_WARNING_TYPE │警告 │ │EVENTLOG_INFORMATION_TYPE │情報 │ │EVENTLOG_AUDIT_SUCCESS │成功の監査 │ │EVENTLOG_AUDIT_FAILURE │失敗の監査 │ └─────────────┴────────┘ イベントビューアでイベントログを見ると説明欄に以下のメッセージが 表示される場合があります。 イベント ID (xxxx) (ソース xxxx 内) に関する説明が見つかりません でした。リモートコンピュータからメッセージを表示するために必要な レジストリ情報またはメッセージ DLL ファイルがローカルコンピュータ にない可能性があります。この説明を取得するために /AUXSOURCE= フラグ を使用することができる可能性があります。詳細については、ヘルプと サポートを参照してください。次の情報はイベントの一部です: イベントビューアがイベントログの説明欄を表示する際には、ソースに 対応するメッセージDLLの中からイベントIDに対応する文字列を取得します。 ソースに対応するメッセージDLLが見つからなかったり、イベントIDに対応 する文字列を取得できない場合に上記のメッセージが表示されます。 上記メッセージを出さないようにするのであれば、DLLを作成してシステムに 登録して下さい。 ●関連項目 ・syslogにメッセージを出力する http://www2u.biglobe.ne.jp/~MAS/perl/waza/syslog.html ===================================================================== ■雑記 データ変換ページ(*1)というのを作りました。ちょっとしたデータ変換の 処理をブラウザ上で実行するページです。HTMLエスケープや行番号付加など できますので、ちょっと使ってみて下さい。 *1 http://books.ivory.ne.jp/dconv/ ===================================================================== Perlで書く(マガジンID:0000109251) 配信数:899 発行者:MAS 本メールマガジンに関するご意見・お問い合わせは t-masuda@mvd.biglobe.ne.jp までお寄せ下さい。 解除 http://www2u.biglobe.ne.jp/~MAS/perl/magazine.html 検索 http://www2u.biglobe.ne.jp/~MAS/perl/search/index.html バックナンバー http://archive.mag2.com/0000109251/index.html RSS http://archive.mag2.com/0000109251/rss10.xml 本メールマガジンは「まぐまぐ」 http://www.mag2.com/ を利用して発行 しています。 =====================================================================



