我正在使用NLog登录我的库,并且创建了自定义NLog目标以将日志条目上传到Azure数据资源管理器。但是,如果在将日志上传到Azure数据资源管理器时遇到异常,我想在本地日志文件中记录一条错误消息。
但是,我无法使用NLog的文件目标进行此错误记录,因为再次调用NLog的记录API,我的自定义目标将再次被调用,从而导致无限循环。
因此,我想使用NLog的InternalLogger(记录到NLog的内部日志文件)来记录上传错误。但是,当我使用下面的InternalLogger方法时,它不会记录到内部日志文件中。
InternalLogger.Error(e, msg);
[InternalLogger类已记录在here
我想知道我是否缺少配置步骤,或者无法登录到NLog的内部日志文件?
启用内部日志,默认情况下处于禁用状态
在配置(nlog.config)
<nlog internalLogFile="c:\log.txt" internalLogLevel="Trace">
或来自代码:
// set internal log level InternalLogger.LogLevel = LogLevel.Trace; // enable internal logging to a file InternalLogger.LogFile = "c:\\log.txt";