EventLog.Source Propiedad

Definición

Obtiene o establece el nombre de origen que se va a registrar y utilizar al escribir en el registro de eventos.Gets or sets the source name to register and use when writing to the event log.

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

Valor de propiedad

Nombre registrado con el registro de eventos como origen de entradas.The name registered with the event log as a source of entries. El valor predeterminado es una cadena vacía ("").The default is an empty string ("").

Atributos

Excepciones

El nombre de origen produce una ruta de clave del Registro con una longitud superior a 254 caracteres.The source name results in a registry key path longer than 254 characters.

Ejemplos

En el ejemplo siguiente se crea el origen MySource si aún no existe y se escribe una entrada en el MyNewLogde registro de eventos.The following example creates the source MySource if it does not already exist, and writes an entry to the event log MyNewLog.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   
   // Create the source, if it does not already exist.
   if (  !EventLog::SourceExists( "MySource" ) )
   {
      EventLog::CreateEventSource( "MySource", "MyNewLog" );
      Console::WriteLine( "CreatingEventSource" );
   }

   
   // Create an EventLog instance and assign its source.
   EventLog^ myLog = gcnew EventLog;
   myLog->Source = "MySource";
   
   // Write an informational entry to the event log.    
   myLog->WriteEntry( "Writing to event log." );
   Console::WriteLine( "Message written to event log." );
}

using System;
using System.Diagnostics;
using System.Threading;
              
class MySample{

    public static void Main(){
    
        // Create the source, if it does not already exist.
        if(!EventLog.SourceExists("MySource"))
        {
            // An event log source should not be created and immediately used.
            // There is a latency time to enable the source, it should be created
            // prior to executing the application that uses the source.
            // Execute this sample a second time to use the new source.
            EventLog.CreateEventSource("MySource", "MyNewLog");
            Console.WriteLine("CreatingEventSource");
            Console.WriteLine("Exiting, execute the application a second time to use the source.");
            // The source is created.  Exit the application to allow it to be registered.
            return;
        }
                
        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog();
        myLog.Source = "MySource";
        
        // Write an informational entry to the event log.    
        myLog.WriteEntry("Writing to event log.");
        
        Console.WriteLine("Message written to event log.");                                                                        
    }
}
   
Option Explicit
Option Strict
Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        ' Create the source, if it does not already exist.
        If Not EventLog.SourceExists("MySource") Then
            EventLog.CreateEventSource("MySource", "MyNewLog")
            Console.WriteLine("CreatingEventSource")
        End If
        
        ' Create an EventLog instance and assign its source.
        Dim myLog As New EventLog()
        myLog.Source = "MySource"
        
        ' Write an informational entry to the event log.    
        myLog.WriteEntry("Writing to event log.")
        
        Console.WriteLine("Message written to event log.")
    End Sub
End Class

Comentarios

El origen del evento indica qué registra el evento.The event source indicates what logs the event. Suele ser el nombre de la aplicación o el nombre de un subcomponente de la aplicación, si la aplicación es grande.It is often the name of the application, or the name of a subcomponent of the application, if the application is large. Las aplicaciones y los servicios deben escribir en el registro de aplicaciones o en un registro personalizado.Applications and services should write to the Application log or a custom log. Los controladores de dispositivo deben escribir en el registro del sistema.Device drivers should write to the System log.

Solo tiene que especificar un origen de eventos si está escribiendo en un registro de eventos.You only need to specify an event source if you are writing to an event log. Antes de escribir una entrada en un registro de eventos, debe registrar el origen de eventos con el registro de eventos como un origen válido de eventos.Before writing an entry to an event log, you must register the event source with the event log as a valid source of events. Cuando se escribe una entrada de registro, el sistema utiliza la propiedad Source para buscar el registro adecuado en el que se va a colocar la entrada.When you write a log entry, the system uses the Source property to find the appropriate log in which to place your entry. Si está leyendo el registro de eventos, puede especificar el Sourceo un Log y MachineName.If you are reading the event log, you can either specify the Source, or a Log and MachineName.

Nota

No es necesario especificar el MachineName si se está conectando a un registro en el equipo local.You are not required to specify the MachineName if you are connecting to a log on the local computer. Si no especifica el MachineName, se supone que se trata del equipo local (".").If you do not specify the MachineName, the local computer (".") is assumed.

Utilice WriteEvent y WriteEntry para escribir eventos en un registro de eventos.Use WriteEvent and WriteEntry to write events to an event log. Debe especificar un origen de eventos para escribir eventos; debe crear y configurar el origen de eventos antes de escribir la primera entrada con el origen.You must specify an event source to write events; you must create and configure the event source before writing the first entry with the source.

Cree el nuevo origen de eventos durante la instalación de la aplicación.Create the new event source during the installation of your application. Esto permite que el sistema operativo actualice su lista de orígenes de eventos registrados y su configuración.This allows time for the operating system to refresh its list of registered event sources and their configuration. Si el sistema operativo no ha actualizado la lista de orígenes de eventos e intenta escribir un evento con el nuevo origen, se producirá un error en la operación de escritura.If the operating system has not refreshed its list of event sources, and you attempt to write an event with the new source, the write operation will fail. Puede configurar un nuevo origen mediante un EventLogInstallero mediante el método CreateEventSource.You can configure a new source using an EventLogInstaller, or using the CreateEventSource method. Debe tener derechos administrativos en el equipo para crear un nuevo origen de eventos.You must have administrative rights on the computer to create a new event source.

Puede crear un origen de eventos para un registro de eventos existente o un nuevo registro de eventos.You can create an event source for an existing event log or a new event log. Cuando se crea un nuevo origen para un nuevo registro de eventos, el sistema registra el origen de ese registro, pero el registro no se crea hasta que se escribe en él la primera entrada.When you create a new source for a new event log, the system registers the source for that log, but the log is not created until the first entry is written to it.

El origen debe ser único en el equipo local; un nuevo nombre de origen no puede coincidir con un nombre de origen existente o con un nombre de registro de eventos existente.The source must be unique on the local computer; a new source name cannot match an existing source name or an existing event log name. Cada origen solo puede escribir en un registro de eventos cada vez; sin embargo, la aplicación puede usar varios orígenes para escribir en varios registros de eventos.Each source can write to only one event log at a time; however, your application can use multiple sources to write to multiple event logs. Por ejemplo, la aplicación podría requerir la configuración de varios orígenes para distintos registros de eventos o archivos de recursos diferentes.For example, your application might require multiple sources configured for different event logs or different resource files.

Si cambia el valor de Source, el EventLog en el que se registra está cerrado y se liberan todos los identificadores de eventos.If you change the Source value, the EventLog to which it is registered is closed and all event handles are released.

El origen se debe configurar para escribir entradas localizadas o para escribir cadenas directas.The source must be configured either for writing localized entries or for writing direct strings. Si la aplicación escribe entradas con los identificadores de recursos y los valores de cadena, debe registrar dos orígenes independientes.If your application writes entries using both resource identifiers and string values, you must register two separate sources. Por ejemplo, configure un origen con archivos de recursos y, a continuación, use ese origen en el método WriteEvent para escribir entradas utilizando los identificadores de recursos en el registro de eventos.For example, configure one source with resource files, and then use that source in the WriteEvent method to write entries using resource identifiers to the event log. A continuación, cree un origen diferente sin archivos de recursos y use ese origen en el método WriteEntry para escribir cadenas directamente en el registro de eventos utilizando ese origen.Then create a different source without resource files, and use that source in the WriteEntry method to write strings directly to the event log using that source.

Para cambiar los detalles de configuración de un origen existente, debe eliminar el origen y, a continuación, crearlo con la nueva configuración.To change the configuration details of an existing source, you must delete the source and then create it with the new configuration. Si otras aplicaciones o componentes usan el origen existente, cree un nuevo origen con la configuración actualizada en lugar de eliminar el origen existente.If other applications or components use the existing source, create a new source with the updated configuration rather than deleting the existing source.

Nota

Si ya se ha asignado un origen a un registro y lo vuelve a asignar a un nuevo registro, debe reiniciar el equipo para que los cambios surtan efecto.If a source has already been mapped to a log and you remap it to a new log, you must restart the computer for the changes to take effect.

Seguridad

EventLogPermission
para escribir la información del registro de eventos en el equipo.for writing the event log information on the computer. Enumeración asociada: WriteAssociated enumeration: Write

Se aplica a

Consulte también: