gpt4 book ai didi

c# - Nlog 日志记录方法

转载 作者:行者123 更新时间:2023-11-30 19:42:14 24 4
gpt4 key购买 nike

我正处于我正在进行的一个小型网站开发项目的初始阶段,并决定使用 NLog 作为我的日志记录解决方案。

到目前为止,我的解决方案是在没有记录的情况下开发的。我现在正在添加日志。

一个例子:

private static Logger logger = LogManager.GetCurrentClassLogger();

public int SaveProject(ProjectDto project)
{
logger.Trace("SaveProject ({0}) : {1}", project.Id, _userId);
return _pb.SaveProject(project);
}

“GetCurrentClassLogger”方法很棒,因为它现在知道我在哪个类(class)。

但是有没有办法报告方法名称,而不是我是怎么做的呢?在上面的示例中,您可以看到我需要在消息中添加“SaveProject”。有没有办法自动获取这个?或者我是否需要将此添加到每个方法记录调用中?

最佳答案

是的,请参阅 callsite layout renderer .你把它放在你的布局配置中。例如:

<?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">

<targets>
<target name="console" xsi:type="ColoredConsole" layout="${callsite:className=false:includeSourcePath=false:methodName=true} ${message}"/>
</targets>

<rules>
<logger name="*" minlevel="Trace" writeTo="console" />
</rules>
</nlog>

关于c# - Nlog 日志记录方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17767966/

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