Вы можете реализовать аудит и обработку исключений как сервисы. Для ведения журнала аудита на уровне приложения требуются данные о состоянии каждой бизнес-операции. Возможность мониторинга приложения в деловом или транзакционном контексте требует наличия интерфейса мониторинга внутри службы для отправки сообщений, подробно описывающих состояние транзакции, характерное для вызова службы. Для этого требуется, чтобы каждая служба отправляла сообщение о состоянии на важных этапах бизнес-транзакции. Затем вы можете создать средство просмотра в реальном времени для корреляции сообщений о состоянии (на основе семантики сообщения - например, идентификатора транзакции) со службами в составном приложении. Это обеспечивает сквозное представление бизнес-транзакции для управления SLA, отслеживания ошибок и определения проблем.
Служба аудита может быть реализована как конечный автомат, который может принимать и записывать сообщения на основе критериев, определенных в его конфигурации. Универсальный обработчик исключений также может использовать службу аудита для поддержки централизованного представления проблем, возникающих в корпоративной SOA, - для поддержки мониторинга на основе исключений. Любое условие «не должно происходить» в решении инструктируется для отправки сообщения об исключении в обработчик исключений .