NLog 找不到自定义目标?
NLog can´t find custom target?
我有一个 WinForm C# 项目,我在其中添加了 NLog 和自定义目标。要加载这个目标,我在 NLog 配置中有这样的东西:
<logger name="GeneralLogger" minlevel="Warn" writeto="customTarget"></logger>
<target name="customTarget" type="LogToService"></target>
在 nlog-internal.log 中我找到了这个:
2020-05-12 11:48:16.0083 Warn Error has been raised. Exception:
NLog.NLogConfigurationException: Failed to create target type:
LogToService ---> System.ArgumentException: Target cannot be found:
'LogToService' at NLog.Config.Factory`2.CreateInstance(String
itemName) at
NLog.Config.LoggingConfigurationParser.CreateTargetType(String
targetTypeName) --- End of inner exception stack trace ---
我看到了有关使用程序集添加扩展的建议,但自定义目标与我添加 NLog Nuget 的项目位于同一个项目中?
此致
由于它不在单独的程序集中,您可以这样做:
// NLog 4.7+
NLog.LogManager.Setup().SetupExtensions(s =>
s.RegisterTarget<MyNamespace.LogToService>("LogToService")
);
或 nlog.config 中的这个(在 <targets>
之前:
<extensions>
<add assembly="YourAssembly"/>
</extensions>
有关所有选项,请参阅 Register your custom component
我有一个 WinForm C# 项目,我在其中添加了 NLog 和自定义目标。要加载这个目标,我在 NLog 配置中有这样的东西:
<logger name="GeneralLogger" minlevel="Warn" writeto="customTarget"></logger>
<target name="customTarget" type="LogToService"></target>
在 nlog-internal.log 中我找到了这个:
2020-05-12 11:48:16.0083 Warn Error has been raised. Exception: NLog.NLogConfigurationException: Failed to create target type: LogToService ---> System.ArgumentException: Target cannot be found: 'LogToService' at NLog.Config.Factory`2.CreateInstance(String itemName) at NLog.Config.LoggingConfigurationParser.CreateTargetType(String targetTypeName) --- End of inner exception stack trace ---
我看到了有关使用程序集添加扩展的建议,但自定义目标与我添加 NLog Nuget 的项目位于同一个项目中?
此致
由于它不在单独的程序集中,您可以这样做:
// NLog 4.7+
NLog.LogManager.Setup().SetupExtensions(s =>
s.RegisterTarget<MyNamespace.LogToService>("LogToService")
);
或 nlog.config 中的这个(在 <targets>
之前:
<extensions>
<add assembly="YourAssembly"/>
</extensions>
有关所有选项,请参阅 Register your custom component