EventLog.Log プロパティ

定義

読み取るログまたは書き込むログの名前を取得または設定します。Gets or sets the name of the log to read from or write to.

public:
 property System::String ^ Log { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
[System.ComponentModel.SettingsBindable(true)]
public string Log { get; set; }
member this.Log : string with get, set
Public Property Log As String

プロパティ値

ログの名前。The name of the log. ログ名には、アプリケーション ログ名、システム ログ名、セキュリティ ログ名、またはカスタム ログ名を指定できます。This can be Application, System, Security, or a custom log name. 既定値は、空の文字列 ("") です。The default is an empty string ("").

属性

次の例では、ローカルコンピューター上のイベントログ "NewEventLog" のエントリを読み取ります。The following example reads entries in the event log, "NewEventLog", on the local computer.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
int main()
{
   EventLog^ myNewLog = gcnew EventLog;
   myNewLog->Log = "NewEventLog";
   System::Collections::IEnumerator^ myEnum = myNewLog->Entries->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      EventLogEntry^ entry = safe_cast<EventLogEntry^>(myEnum->Current);
      Console::WriteLine( "\tEntry: {0}", entry->Message );
   }
}

using System;
using System.Diagnostics;
              
class MySample{

    public static void Main(){

        EventLog myNewLog = new EventLog();
        myNewLog.Log = "NewEventLog";                      
        foreach(EventLogEntry entry in myNewLog.Entries){
            Console.WriteLine("\tEntry: " + entry.Message);
        }    
    }       
}
   
Imports System.Diagnostics

Class MySample
    Public Shared Sub Main()
        Dim myNewLog As New EventLog()
        myNewLog.Log = "NewEventLog"
        Dim entry As EventLogEntry
        For Each entry In  myNewLog.Entries
            Console.WriteLine((ControlChars.Tab & "Entry: " & entry.Message))
        Next entry
    End Sub
End Class

注釈

サーバーには、既定で次の3つのログファイルが存在します。アプリケーション、システム、およびセキュリティ。Three log files exist by default on the server: Application, System, and Security. アプリケーションとサービスは、アプリケーションログファイルを使用します。Applications and services use the Application log file. デバイスドライバーは、システムログファイルを使用します。Device drivers use the System log file. 監査が有効になっている場合、システムはセキュリティログに成功と失敗の監査イベントを生成します。The system generates success and failure audit events in the Security log when auditing is turned on. Windows サーバー上の Active Directory など、他のアプリケーションがインストールされている場合は、他の既定のログファイルが存在する可能性があります。If you have other applications installed, like Active Directory on Windows servers, there might be other default log files. また、ローカルコンピューターまたはリモートコンピューター上にカスタムログファイルを作成することもできます。In addition, you can create custom log files on a local or remote computer. カスタムログを使用すると、コンポーネントが既定のアプリケーションログにイベントを書き込む場合に許可されるよりも詳細な方法でエントリを整理できます。Custom logs help organize your entries in a more detailed way than is allowed when your components write events to the default Application log.

注意

ログ名は、8文字までに制限されています。Log names are limited to eight characters. システムによっては、MyLogSample1 と MyLogSample2 は同じログになります。According to the system, MyLogSample1 and MyLogSample2 are the same log.

イベントログに書き込む場合は、Log プロパティを指定するだけでは不十分です。If you write to an event log, it is not enough to specify the Log property. 特定のログに接続するには、Source プロパティをイベントログリソースに関連付ける必要があります。You must associate a Source property with your event log resource to connect it to a particular log. ログからの読み取りのみを行う場合は、Source を指定する必要はありませんが、イベントソースは、サーバーのレジストリのイベントログリソースに関連付けられている必要があります。It is not necessary to specify a Source when only reading from a log, but an event source must be associated with the event log resource in the server's registry. Log 名と MachineName (サーバーコンピューター名) のみを指定して、その名前から読み取ることができます。You can specify only the Log name and MachineName (server computer name) to read from it.

注意

ログに接続している場合は、MachineName を指定する必要はありません。You are not required to specify the MachineName if you are connecting to a log. MachineNameを指定しなかった場合は、ローカルコンピューター (".") と見なされます。If you do not specify the MachineName, the local computer (".") is assumed.

Source プロパティが指定されていない場合、Log を呼び出すと、Log が明示的に設定されていない場合は空の文字列が返されます (Log プロパティを設定するか、コンストラクターを使用します)。If the Source property has not been specified, a call to Log returns an empty string if Log has not been explicitly set (by setting the Log property, or through the constructor). Source が指定されている場合、Log は、そのソースが登録されているログの名前を返します。If the Source has been specified, Log returns the name of the log to which that source was registered.

ソースは、一度に1つのログにしか登録できません。A source can only be registered to one log at a time. EventLogのインスタンスに対して Source プロパティが設定されている場合は、Source の値を変更したり、DeleteEventSource 最初にを呼び出したりせずに、その EventLogLog プロパティを変更することはできません。If the Source property was set for an instance of EventLog, you cannot change the Log property for that EventLog without changing the value of Source or calling DeleteEventSource first. Source プロパティを設定した後に Log プロパティを変更すると、ログエントリの書き込みで例外がスローされます。If you change the Log property after the Source property has been set, writing a log entry throws an exception.

オペレーティング システムではイベント ログはファイルとして保存されます。The operating system stores event logs as files. EventLogInstaller または CreateEventSource を使用して新しいイベントログを作成する場合、関連付けられているファイルは、指定したコンピューターの%SystemRoot%\System32\Config ディレクトリに格納されます。When you use EventLogInstaller or CreateEventSource to create a new event log, the associated file is stored in the %SystemRoot%\System32\Config directory on the specified computer. ファイル名を設定するには、Log プロパティの最初の8文字に ".evt" というファイル名拡張子を追加します。The file name is set by appending the first 8 characters of the Log property with the ".evt" file name extension.

Log プロパティだけを使用して新しいログを作成することはできません (ログのソースを指定する必要はありません)。You cannot create a new log using the Log property alone (without specifying a source for the log). CreateEventSourceを呼び出して、新しいログ名をパラメーターとして渡し、DeleteEventSourceを呼び出すことができます。You can call CreateEventSource, passing in a new log name as a parameter, and then call DeleteEventSource. ただし、通常は、アプリケーション固有の新しいログを作成 (またはエントリを書き込む) するか、既存のログを読み取るかを指定します。However, the intent is usually either to create (and write entries to) new application-specific logs, or to read from existing logs.

Log 値が変更されると、イベントログが閉じられ、すべてのイベントハンドルが解放されます。If the Log value changes, the event log is closed and all event handles are released.

注意事項

Log プロパティを存在しないログの名前に設定すると、システムによって EventLog がアプリケーションログにアタッチされますが、指定したログ以外のログが使用されていることを示す警告は表示されません。If you set the Log property to the name of a log that does not exist, the system attaches the EventLog to the Application log, but does not warn you that it is using a log other than the one you specified.

セキュリティ

EventLogPermission
を参照してください。for writing the event log information on the computer. 関連付けられた列挙型: WriteAssociated enumeration: Write

適用対象

こちらもご覧ください