eia o Log de Eventos Remotamente com o .NET

Quero ler o log de eventos em um computador remoto para verificar se há erros durante o teste. Aqui está um código relevante:

public bool CheckEventLogs(DateTime start)
{
  EventLog myEventLog = new EventLog("CustomLog", "ServerName");
  bool errorFound = false;
  foreach (EventLogEntry entry in myEventLog.Entries)
  {
    if (entry.EntryType == EventLogEntryType.Error && entry.TimeGenerated >= start)
    {
       Console.WriteLine("Error in Event Log:\n" + entry.Message + "\n");
       errorFound = true;
    }
  }
  return errorFound;
}

Atualmente, esse código gera uma exceção (tentativa de executar uma operação não autorizada). De acordo com MSDN, Preciso do EventLogPermission, mas estou lutando para encontrar exemplos de como usar essa permissão. Alguém tem um exemplo de como fazer isso?

Edit: Resposta a Comentários

Obrigado a todos pelos comentários - aqui estão as informações adicionais solicitadas:

A exceção é lançada a partir doforeach declaração. Especificamente, ao pesquisar o código lançado na etapa depois de quandoin está realçado. Parece que consegui criar o objeto de log de eventos, mas não consigo acessar as entradas no log de evento

Minha conta não tem permissão para ler o log de eventos no sistema de destino, mas eu tenho credenciais para uma conta que possui. Ao se conectar manualmente através do visualizador de eventos, há uma opção para se conectar como outro usuário. Depois de fazer isso manualmente, meu código foi executado sem problemas. No entanto, não posso confiar em fazê-lo manualmente toda vez que este programa é executado. O que eu preciso é de uma maneira de conectar-se como outro usuário programaticamente. Eu pensei que oEventLogPermission seria a maneira de fazer isso, mas talvez haja outra maneira. Se alguém souber como se conectar a um log remoto como um usuário diferente em C #, seria exatamente o que eu estava procurand

questionAnswers(2)

yourAnswerToTheQuestion