我使用 NLog(与 logentries.com)登录我的 WPF 应用程序,但我的应用程序的一些外部组件只接受文件系统路径作为日志输出。有可能创建将与 NLog 关联的“虚拟路径/文件”,并且附加到此“虚拟文件”的每一行都将直接路由到 Nlog(然后到 logentries.com)?
目前我正在使用磁盘上的临时文件,监视此文件的更改并将更新的内容重新发送到 NLog,但这不是很有效。
我使用 NLog(与 logentries.com)登录我的 WPF 应用程序,但我的应用程序的一些外部组件只接受文件系统路径作为日志输出。有可能创建将与 NLog 关联的“虚拟路径/文件”,并且附加到此“虚拟文件”的每一行都将直接路由到 Nlog(然后到 logentries.com)?
目前我正在使用磁盘上的临时文件,监视此文件的更改并将更新的内容重新发送到 NLog,但这不是很有效。
我认为您应该为此编写一个自定义目标。只有几行!
[Target("MyFirst")]
public sealed class MyFirstTarget: TargetWithLayout
{
public MyFirstTarget()
{
}
protected override void Write(LogEventInfo logEvent)
{
string logMessage = this.Layout.Render(logEvent);
// TODO - write me logMessage to file
}
}
请参阅与此相关的新闻帖子。