UJP - 技術情報

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

     

バッチプログラムからイベントログに書き込む 〜logevent.exe〜


バッチプログラムからイベントログに書き込む

〜logevent.exe〜


0.改定履歴

  • 1998.03.19 初版
  • 1998.03.20 参考資料の追加
  • 1998.04.02 NT3.51の情報追加
  • 1999.11.11 図に会社関係の情報が入ってたので消した

1.はじめに

 このドキュメントは,WindowsNTでバッチプログラムからイベントログに情報を書き込む手段を明記する.

 どのような用途があるかというと,たとえばNTbackupを使ってバックアップしているとき,その開始や終了などの情報はデフォルトでイベントログに書き込まれるが,詳細なコメント,たとえば“どのディレクトリをバックアップしたか”などが書き込めない. その様なときに,このコマンドを用いてイベントログに書き込むことで,より詳細な情報管理を行おうとするものである.

2.logevent.exeプログラムの入手

 バッチプログラムからイベントログに書き込む為のツール“logevent.exe”は,Windows NTリソースキットに入っている.

 あるいは,MicrosoftのFTPサーバから取得する事も出来る.

3.NT3.51とNT4.0での動作の違い

 NT4.0で稼働するものは,ログの出力先はネットワーク上のコンピュータを指定できるが,NT3.51用のものはそれが出来ない.

 もし,NT4.0用のlogevent.exeがNT3.51でも稼働することが出来るのならば,できるかもしれない.(未検証)

4.設定

4.1.Windows NT3.51の場合

 Microsoftの技術情報「文書番号:J040629 ,Q131008」に記載されているように,レジストリを編集する必要があるのだが,この元ファイルがどこにあるのか不明である.

 NT4.0に導入したファイルを持ってくればとりあえず動くので,それで行えばよい. そうすると,前出の3.51版と4.0版の違いもなく,4.0版を使うので,3.51でも4.0の機能が実現できる.

 単純に,NT4.0版のlogevent.exeを複写しただけでは次のようなエラーがでる.

 よって,このMSVCRT.DLLファイルを複写してくる. このファイルは,NT4.0のsystem32ディレクトリ以下に入っているハズで,これをパスの通った所に複写すればよい.(レジストリの登録などは不要)

4.2.Windows NT 4.0の場合

 リソースキットをインストール後,初めて使用したときに自動的に組み込まれる.

インストールの例(引数は適当)
d:\toNT>logevent.exe 9999 aaa bbb ccc ddd eee fff ggg
Installing D:\NTRESKIT\LOGEVENT.EXE onto local machine.
d:\toNT>

5.使用方法

 使用方法も引数も,WindowsNT3.51とWindowsNT4.0では異なる. よって,それぞれの説明を行う.

5.1.Windows NT3.51の場合

 NT4.0版を入れる限り,次のNT4.0と同じ.

5.2.Windows NT4.0の場合

 ヘルプを見ると,文法は次のようになっている.

NT4.0版のlogevent.exe
d:\toNT>logevent
Usage: logevent [-m \\MACHINENAME] [-s SIWEF] [-c CategoryNumber] "Event Text"
Severity is one of (S)uccess, (I)nformation, (W)arning, (E)rror or (F)ailure.

d:\toNT>

 各オプションは次のようになる.

NT4.0版のlogevent.exeの項目
オプション 内容
-m 出力先のコンピュータ名. なければローカルに記録される.
-c 分類番号
-s イベントの種類.
"もじれつ" メッセージのテキスト

 エラーステータス(状態)は,次のように指定する.

種類オプション(-s)の設定
種類 オプション 表示されるステータス
Success -s s 成功の監査
Information -s i 情報
Warning -s w 警告
Error -s e エラー
Failure -s f 失敗の監査

 コマンドの実行例を次に示す.

NT4.0のlogevent.exe実行例
D:\NTRESKIT\logevent -m \\fXXXXX02 -c 8000 -s e "Test"
Installing D:\NTRESKIT\LOGEVENT.EXE onto local machine

 この2行目は,最初の1回だけ表示される.

 実行後,指定したfXXXXX02マシンのイベントログをみると,次のようなメッセージが表示されている.

  メッセージに"Test"だけ指定しても,この「ソース(IUser Event)」内のイベントID(1)〜」は必ず表示されるが,無視すれば良い.(レジストリに登録されてないメッセージがでたという意味)


参考資料

  • マイクロソフト技術情報 文書番号:J040629 ,Q131008

広告スペース
Google