イベント ログの参照
更新 : 2007 年 11 月
すべてのコンピュータには、アプリケーション、セキュリティ、およびシステムの 3 つの既定のイベント ログがあります。これらのログの他に、サーバーのアプリケーションによってインストールされるログ、およびユーザーが作成するカスタム ログがある場合もあります。必要に応じて、どのイベント ログを使用するかを選択できます。ログを参照する方法は、ログのエントリを読み込むか、またはログに書き込むかによって異なります。読み込み操作および書き込み操作によるログの参照プロセスを次の図に示します。
イベント ログの参照
エントリを読み込むためのログの参照
イベント ログからエントリを読み込む場合、コンピュータ名およびログ名によって必要なログを一意に識別します。"コンピュータ名" とはイベント ログが置かれているサーバーのことであり、"ログ名" とはログの名前です。コンピュータ名はオプションです。コンピュータを指定しない場合は、ローカル コンピュータが指定されます。
たとえば、EventLog コンポーネントのインスタンスがあり、このインスタンスを使用して、"myserver" というサーバーに保存された "OrderEntrySystem" という名前のカスタム ログのエントリを読み込むとします。このログに接続するには、次のように指定します。
コンピュータ名に "myserver" を指定します。
ログ名に "OrderEntrySystem" を指定します。
ログのコンピュータ名は、MachineName プロパティを問い合わせて取得できます。ログ名は、Log プロパティを問い合わせて取得できます。
セキュリティに関するメモ : |
---|
イベント ログのデータは、システム外部からの入力と同じように扱ってください。アプリケーションでは、イベント ログのデータを入力として使用する前に妥当性を検査する必要があります。悪意のあるユーザーによって作成された別のプロセスがイベント ログにアクセスしてエントリを追加している可能性があります。 |
エントリを書き込むためのログの参照
イベント ログにエントリを書き込む場合、Source プロパティを指定する必要があります。Source プロパティでは、エントリの有効なソースとして、イベント ログにコンポーネントを登録します。Source プロパティの値には任意の文字列を指定できますが、プロジェクト名を使用すると便利です。
メモ : |
---|
ソースが既にログに登録されている場合、ログ名のプロパティを設定してログに書き込む必要はありません。また、ローカル コンピュータを指定する場合、コンピュータ名を設定する必要はありません。 |
たとえば、EventLog コンポーネントのインスタンスがあり、このインスタンスを使用して、ローカル コンピュータに保存された "OrderEntrySystem" というカスタム ログにエントリを書き込むとします。ソースが未登録であるという前提で、コンピュータ名に "."、ログ名に "OrderEntrySystem" を指定し、ソースに任意の文字列を設定して、このログに接続します。
メモ : |
---|
この例では、コンピュータ名に指定されたピリオドはローカル コンピュータを示します。 |
1 つのソースに関連付けられる (エントリを書き込むことができる) イベント ログは、一度に 1 つだけです。一方、1 つのイベント ログには、一度に数多くの異なるソースを書き込むことができます。つまり、特定のソースとやり取りするように設定されている場合に、EventLog コンポーネントの各インスタンスが書き込みできるイベント ログはそれぞれ 1 つだけです。複数のログに書き込む場合は、異なるインスタンスを使用するか、または既存のインスタンスの Source プロパティを変更する必要があります。イベント ログのソースの詳細については、EventLog の解説または「EventLog コンポーネントの概要」を参照してください。
参照
処理手順
チュートリアル : イベント ログ、イベント ソース、およびエントリの基礎