我正在尝试编写用于在 NLog 中登录的自定义附加程序。我看到了 log4net 的一些示例,其中应该编写从抽象类 AppenderSkeleton 继承的 appender。谁能在 NLog 中命名模拟类?
最佳答案
log4net 附加程序的 NLog 模拟将成为目标。要创建自己的目标,您必须继承自 NLog.Targets.TargetWithLayout
。您还应该使用属性 TargetAttribute
标记您的目标类:
[Target("Foo")]
public class FooTarget : TargetWithLayout
{
protected override void Write(LogEventInfo logEvent)
{
Console.WriteLine(logEvent.Message);
}
}
下一步是将您的类定义到 NLog 扩展的程序集添加:
<nlog>
<extensions>
<add assembly="MyBarAssembly"/>
</extensions>
<targets>
...
最后一步 - 注册你的目标(NLog 将通过 TargetAttribute
在类型市场的扩展中搜索)
<target name="foo" type="Foo"/>
关于c# - 自定义 NLog Appender,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13154263/