Я разработал небольшую службу WCF, которая обрабатывает HTTP-запрос.Вставьте все ошибки внутреннего сервера в журнал событий Windows
Я хочу, чтобы быть в курсе каждой ошибки, что происходит:
- все, что приводит к 500 Внутренняя ошибка сервера из контрактов просмотра
- все, что вызывает CommunicationException от привязок просмотра (я написал обычным, но я использую также стандартные)
Ошибки должны быть помещены в журнал событий Windows.
Мой вопрос:
- Есть ли возможность добавить центральный обработчик событий для всего стека WCF, которая захватывает все исключения и печатает их в журнале событий?
Поздравления.
Я вставил «проливает новый CommunicationException (» ошибка произошла «)» в метод ПолучитьЗапроса канала пользовательских привязок. Пользовательский обработчик ошибок был вставлен через «foreach» (ChannelDispatcher cd в h.ChannelDispatchers) {cd.ErrorHandlers.Add (новый MyErrorHandler());} Однако мой пользовательский обработчик ошибок не вызван в любое время. – Etan
Я думаю, вы слишком рано !:-) Если я правильно помню, интерфейс IErrorHandler запускается только после того, как диспетчер на стороне сервера отправил сообщение методу объекта службы. Все, что до этого будет отправлено прямо клиенту –
, «throw new CommunicationException (« error »)» в реализацию контракта также не будет работать. Какие исключения обрабатываются обработчиком ошибок, если не те, которые были перед отправкой, а не после отправки? – Etan