首页 > 解决方案 > NLog:捕获故障异常在日志中

问题描述

如何使用 NLog 捕获 FaultException.Detail 对象内容。

以下是我目前的布局:

${longdate}|${level:uppercase=true}|${logger}|${message}${onexception:inner=${newline}${exception:format=StackTrace :innerFormat=ShortType, Message, StackTrace  :maxInnerExceptionLevel=10 :separator=${newline}${newline}------ :innerExceptionSeparator=${newline}${newline}*----------*

标签: asp.net-mvcnlog

解决方案


NLog 4.7 已经发布,现在你可以这样做了:

${exception:format=Type,Message,Properties}

您还可以配置应为特定类型的异常对象包含哪些属性:

  LogManager.Setup().SetupSerialization(s =>
   s.RegisterObjectTransformation<System.Net.WebException>(ex => new {
      Type = ex.GetType().ToString(),
      Message = ex.Message,
      Status = ex.Status,
   })
  );

另请参阅:https ://github.com/nlog/NLog/wiki/Exception-Layout-Renderer

另见:https ://github.com/NLog/NLog/wiki/Configure-from-code


推荐阅读