Обработка System.IO.IOException для нескольких соединений - PullRequest
1 голос
/ 10 марта 2009

Я хочу создать приложение для удаленного мониторинга журналов событий нескольких серверов, все хорошо, но серверы могут быть отключены время от времени.

Когда я подключаюсь к удаленному журналу событий и соединение с машиной теряется, возникает исключение System.IO.IOException, я хотел бы исправить ошибку, подключившись снова к удаленному серверу, но так как класс EventLog не имеет метод подключения Мне нужно будет создать новый экземпляр EventLog и выяснить, какой экземпляр EventLog выдал исключение.

Как лучше всего справиться с этим сценарием?

Ответы [ 2 ]

2 голосов
/ 10 марта 2009

Вы можете получить имя журнала и имя компьютера из экземпляра EventLog, который генерирует исключение, а затем повторно инициализировать этот отказавший экземпляр с этими подробностями.

Что касается хранения экземпляров EventLog, используйте List <> или Dictionary <>, который позволит вам перечислять все EventLogs, которые вы отслеживаете в настоящее время.

0 голосов
/ 10 марта 2009

вы можете создать класс ManagedEventLog, в котором вы сохраняете соединение журнала событий и идентификатор, если соединение потеряно и выброшено исключение, вы можете увидеть, какой идентификатор принадлежит этому соединению и может вызвать метод пересоединения в классе ManagedEventLog.

...