Trace ActivityId получает сброс в обработчике ошибок WCF

У меня есть сервис WCF с реализацией IErrorHandler. В его методе HandleError я регистрирую исключение, используя TraceSource:

public bool HandleError(Exception error)
{
    tracer.TraceEvent(TraceEventType.Error, 0, error.ToString());
    return true;
}

Однако, когда этот метод введен, Trace.CorrelationManager.ActivityId изменился по сравнению с тем, что я установил в начале метода обслуживания. Таким образом, я получаю запись в журнале с произвольным идентификатором активности, которая разрушает след активности.

WCF делает это? и почему?

1 ответ

Решение

Я думаю, вам нужно проделать дополнительную работу из-за WCF.

Посмотрите, поможет ли эта ссылка:

Расширение / Custom FaultContractExceptionHandler для обработки исключений в WCF

Другие вопросы по тегам