¿Es necesario crear manualmente un origen de registro de eventos de Windows al instalar un servicio de Windows?

He desarrollado un servicio de Windows en C #. He creado un instalador con Visual Studio 2008, que instala el servicio de Windows. Todo está bien hasta ahora. Quiero asegurarme de que el origen del evento se haya creado en el momento de la instalación, de modo que cualquier condición de error / excepción en el tiempo de ejecución se registre correctamente en el registro de eventos de Windows.

¿El origen del evento se crea (y elimina) automáticamente como parte de la instalación (y desinstalación) del servicio de Windows, o tengo que manejarlo yo mismo y crear una acción personalizada para crear y eliminar de la siguiente manera?

protected override void OnBeforeInstall(IDictionary savedState)
{
    base.OnBeforeInstall(savedState);

    if (!EventLog.SourceExists(ServiceName))
        EventLog.CreateEventSource(ServiceName, "Application");
}

protected override void OnAfterUninstall(IDictionary savedState)
{
    base.OnAfterInstall(savedState);

    if (EventLog.SourceExists(ServiceName))
        EventLog.DeleteEventSource(ServiceName);
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta