asp.net-mvc - 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}*----------*
解决方案
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
推荐阅读
- python - 在这个程序中我得到属性错误?谁能解决这个错误并向我解释
- java - 调整另一个 jpanel 的大小时如何调整 jpanel 的大小
- excel - 复制值
- php - 在循环中完成 bindValue() 后无法执行 () 查询,但在为表中的每个列名独立运行 bindValue 时执行
- javascript - 创建一个多房间网站,每个房间都有一个唯一的可共享 URL
- python - 我得到 `needquote = (" " in arg) 或 ("\t" in arg) 或不是 arg TypeError: 类型为 'NoneType' 的参数是不可迭代的
- python-3.x - Pytesseract TesseractError: (3221225794, '')
- python - 如何访问复杂的嵌套多值 python 字典中的值
- ios - 如何启用基于语音的搜索栏
- angular9 - 在 Angular 9 中使用 ReactiveForm 模块创建简单表单,但出现 formGroup 错误