В настройке RESTful для клиента может быть отправлен идентификатор операции (как правило, GUID), чтобы отслеживать журналы запросов.Ведение идентификатора операции через запрос в веб-интерфейсе
Мой вопрос в том, что в веб-интерфейсе есть способ, свойственный .NET Web API для отслеживания идентификатора на запрос?
log4net имеет LogicalContext, который может отслеживать это. Проблема с LogicalContext заключается в том, что она специфична для log4net и не может использоваться с NLog. В LogicalContext нет способа получить список всех ключей. Я должен знать ключ перед рукой, в случае каких-либо проблем, если один API называет его «идентификатором операции», а другой API называет его «идентификатором активности».
спасибо. Однако есть проблема: Trace.CorrelationManager.ActivityId не кажется последовательным. Если в запросе я установил ActivityId как определенное значение, и во время запроса я создаю несколько потоков, то внезапно значение ActivityId в этих потоках не равно, в то время как LogicalThreadContext в log4net согласован для нескольких потоков. – Husain
@Husain NLog имеет MappedDiagnosticsLogicalContext (MDLC), когда асинхронный логический контекст перемещается между потоками. https://github.com/NLog/NLog/wiki/MDLC-Layout-Renderer –