[NT] バッチ ファイルからの Logevent.exe の使用方法

文書翻訳 文書翻訳
文書番号: 131008 - 対象製品
この記事は、以前は次の ID で公開されていました: JP131008
すべて展開する | すべて折りたたむ

目次

概要

Logevent.exe はコマンド ライン ユーティリティですが、ユーザーによって提供されるイベント ID をアプリケーションのイベント ログに記録するために使用できます。これによって、ユーザーは、バッチ ファイル、ログイン スクリプト、Performance Monitor からエラーと情報データを記録できます。アプリケーション イベント ログは、イベントログを扱うための標準ツールを使用して表示され、取り扱われます。

Windows NT 4.0 では、LOGEVENT を使用して、ローカルまたはリモート コンピュータの Windows NT イベント ログにエントリすることもできます。特にこれはログオン スクリプトから、または AT コマンドで実行されるバッチ プログラムの実行から、履歴情報を保存するのに便利です。他のコンピュータのイベント ログにエントリを保存する機能によって、必要であれば、データを中心的に収集できます。

詳細

Windows NT 3.51

Logevent.exe を %SystemRoot%\system32 ディレクトリにコピーして、Logevent.exe をインストールします。

LOGEVENT では、レジストリが追加キーを使用して修正される必要があります。レジストリで必要なキーを作成するために、パラメータを使わずに LOGEVENT を実行してください。以下のようなキーが作成されます。
   \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog
   \Application\CommandLog
そして、このキーの下に以下の値を作成します。
   EventMessageFile
   TypesSupported
LOGEVENT によって記録されたすべてのイベントは、Event Viewer 内に表示されると、イベントのソースとして CommandLog を表示します。

Logevent.exe コマンドの構文は以下のとおりです。
LOGEVENT xxxxx string1 string2 string3 string4 string5
ここでは、xxxxx は登録するイベント ID (16 進数) であり、ストリング 1 からストリング 5 は、1 から 5 の挿入ストリングです。

LOGEVENT がパラメータなしで実行されると、(上記のとおり) レジストリ内で必要なキーを作成します。パラメータなしで実行され、その時既にレジストリ キーが存在している場合、以下の用法が与えられます。
   [e:\ntbin]logevent
      用法: LogEvent xxxx string1 string2 string3 string4 string5
           ここでは、xxxx = 数字の ID であり stringX は "multiple word string" |
            single_word です
挿入ストリングは 5 つだけ認められていますが、ほとんどのアプリケーションはこれで十分です。それは、1 つのストリング内で必要なだけの十分な情報を渡せるように、ダブル引用符 (") が使用されているためです。追加のストリングが有益な場所では、環境変数はパラメータとしてバッチ ファイルから渡されます。イベント ID は常に提供される必要があります。そうでないと、ユーティリティはコマンドの用法を提供し、ログに何も記録せずに終了します。

たとえば、コマンド実行の成功を報告するためには、LOGEVENT がバッチ ファイルから使用され、以下に示す例のコマンドを使用して、それをアプリケーション イベント ログに記録します。
   LOGEVENT 9876 "program failure in batch file"%0
      (バッチ ファイルからプログラム実行エラーを報告するため)

   LOGEVENT 1234 "Program CAPTURE.EXE" "ran successfully to completion"
      (プログラム実行が成功した後でバッチ ファイルから)

   LOGEVENT 2222 "Program failed for user" %USERNAME% "with a path of"
   %PATH%
      (環境変数の使用を示すバッチ ファイルから)
もう 1 つの例は、Performance Monitor からの LOGEVENT の使用です。PerfMon が、警告を発するために設定されている場合、警告をイベント ログに記録させることが可能です。しかし、現在のバージョンの PerfMon は、Alert によって生成されたすべてのイベントを、アプリケーション イベント ログに、同じイベント ID として記録します。そこで、いくつかの警告がモニターされた場合、ログ内のイベント ID を使用しても、そのイベントを引き起こす警告を識別できません (イベントの詳細には情報が示されています)。

これらの警告を (メインフレームの) NetView へ渡すために SNA サーバーの NVAlert 機能が使用されている場合は、イベント ID を使用して、ログ内のイベントを生成する警告を識別する必要があります。LOGEVENT を使用することによってこれが可能となります。たとえば、PerfMon でモニターする警告を設定し、それから、警告が発生したときに、以下のコマンドを実行するようにしておきます。
   LOGEVENT 2001 "Alert generated from Perfmon" "disk usage on D: exceeded
   70%%"
この例のためのイベント ログを表示すると、以下のようになります。(エラーメッセージは正しいものではありません。)
   日付:      4/13/95      イベント ID:  2001
   時間:      9:16:40 AM   ソース:    CommandLog
   ユーザ:      N/A          種類:      情報
   コンピュータ:  SPYMASTER    カテゴリ:  なし

   説明:
   ソース (CommandLog) のイベント ID (2001) の説明は見つかりません。以下の挿入ス
   トリングが含まれています。: Alert generated
   from  Perfmon , disk usage on D: exceeded 70%.
最初に、提供されるストリングが渡され、それから PerfMon によって提供されるパラメータが渡されます。PerfMon によって提供されるパラメータは、実際には PerfMon 自体に記録される情報と同じものです。PerfMon から渡されたすべてのパラメータがイベントログに記録されると、上記と同じラインを使用しますが、(NT 3.5 と NT 3.51 ではそれぞれに) ラインの最後に ," (カンマとダブル引用符) または , (カンマ) を付けます 。この場合、1 から 4 の挿入ストリングだけが、最後に ," をつけて渡されます。たとえば、以下のようになります。
   LOGEVENT 2001 "Alert generated from Perfmon" "disk usage on D: exceeded
   70%%"
これは、LOGEVENT に提供された 2 つのストリングを渡すもので、その後、Perfmon からのすべての情報を第 3 の挿入ストリングとして渡します。(NT 3.51 では) ラインの最後にカンマ (,) をつけることを忘れないでください 。NT 3.1 または NT 3.5 では ," を使用します。

イベント ログを見ると、このイベント ID の説明を表示できないと報告されています。これは、ユーザーがイベント ログに記録したイベント ID を知る手段がなく、Logevent.exe の説明ストリングを含むファイルが存在しないためです。レジストリの EventMessageFile は、Logevent.exe プログラム自体を指します。しかし、Logevent.exe は説明ストリングを含んでいないので、実際にはこれはレジストリのプレースホールダーのエントリです。

記録されたイベント ID は、実際には、ユーザーまたはイベント ログをモニターしているアプリケーション (NV Alert など) にとって意味があるだけです。さらにこの例では、イベント ログに % を表示するために、%% を必要としています。
(これは、挿入ストリング内での % 文字のもつ特定の意味のためです。)

さらに、これらのイベントはユーザーによって生成されるため、情報タイプのメッセージとしてログに記録されれば十分であると感じられます。現在のところ、このユーティリティを使用して警告またはエラータイプのイベントを記録する方法 (または必要性) はありません。

Windows NT 4.0

Event Log Viewer が適切にエントリを表示するには、イベント ログを表示するために使用されるコンピュータにアプリケーションをインストールする必要があります。最初に LOGEVENT プログラムを使用するときに、自動的にインストールが行われます。

Logevent.exe の構文は以下のとおりです。
   LOGEVENT [-m \\MACHINENAME] [-s SIWEF] [-c CategoryNumber] "Event Text"
   Severity は、(S)uccess、(I)nformation、(W)arning、(E)rror または
   (F)ailure のどれかです。

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 131008 (最終更新日 1997-12-22) をもとに作成したものです。

プロパティ

文書番号: 131008 - 最終更新日: 2003年1月20日 - リビジョン: 1.1
この資料は以下の製品について記述したものです。
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
キーワード:?
kbinfo ntdomain ntsrvwkst kbnetwork ntsecurity KB131008
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com