gpt4 book ai didi

c# - NLog xsi :type not working with custom target

转载 作者:太空狗 更新时间:2023-10-30 01:18:30 25 4
gpt4 key购买 nike

我想用这个在 NLog 中编写自定义目标: https://github.com/nlog/nlog/wiki/How%20to%20write%20a%20Target

并将我的日志写入 MongoDB,所以我的代码如下所示:

namespace NLog.Mongo
{
[Target("Mongo")]
public sealed class MongoDBNLogTarget : Target
{
...
protected override void Write(NLog.LogEventInfo logEvent)
{
Repository.Insert(logEvent);
}
}
}

我想我的 NLog.config 文件应该是这样的:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<extensions>
<add assembly="NLog.Mongo"/>
</extensions>
<targets>
<target name="mongo" xsi:type="Mongo"/>
</targets>

<rules>
<logger name="*" minLevel="Info" writeTo="mongo" />
</rules>
</nlog>

但是我收到警告:

This is an invalid xsi:type 'http://www.nlog-project.org/schemas/NLog.xsd:Mongo'

最佳答案

这是来自 XSD 的错误,应该被视为警告。 XSD 是使用所有可能的目标(在 NLog 主包中)生成的,因此没有自定义目标。

如果 XML 配置包含这些“错误”,这些类型的错误可以被忽略并且 NLog 不会停止工作。

关于c# - NLog xsi :type not working with custom target,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27065459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com