Я использую Serilog в качестве моей рамки ведения журнала (с Seq в качестве моей раковины моего журнала). При регистрации исключений я использую что-то вроде:Как настроить вывод исключений с помощью serilog
log.Error(ex, "Operation Failed");
Мое приложение сильно использует методы async/await. Когда происходят необработанные исключения, трассировки стека очень трудно читать. Существует пакет nuget, который очищает трассировки стека асинхронного (https://github.com/aelij/AsyncFriendlyStackTrace). Это создает метод расширения, чтобы дать вам доступ к модифицированному/чистой трассировки стека:
ex.ToAsyncString()
я хотел бы быть в состоянии использовать эту библиотеку для перехвата трассировки стека перед записью в послед и вместо регистрируем чистая/модифицированная трассировка стека.
Есть ли способ с Serilog/Seq контролировать точный вывод строки ошибки, которая отправляется в раковину журнала?
, когда вы поставили точку останова на 'log.Error (ex, .....)' вы можете получить на 'ex.Message или InnerException' на данный момент ..? – MethodMan