标签: .net-trace

跟踪方法执行时间

我试图在我的应用程序中"注入"自定义跟踪方法.

我希望尽可能优雅,不需要修改现有的大部分代码,并且可以轻松启用/禁用它.

我能想到的一个解决方案是创建一个自定义Attribute,我将它附加到我想要跟踪的方法.

基本理念:

public class MethodSnifferAttribute : Attribute
{
    private Stopwatch sw = null;

    public void BeforeExecution()
    {
        sw = new Stopwatch();
        sw.Start();
    }
    public void ExecutionEnd()
    {
        sw.Stop();
        LoggerManager.Logger.Log("Execution time: " + sw.ElapsedMilliseconds);
    }
}

public class MyClass
{
    [MethodSniffer]
    public void Function()
    {
        // do a long task
    }
}
Run Code Online (Sandbox Code Playgroud)

是否有任何现有.NET属性为调用/结束方法提供回调?

.net c# asp.net trace .net-trace

10
推荐指数
1
解决办法
6069
查看次数

使用.NET Trace,然后使用NLog或log4net等作为监听器

我想避免编写我自己的通用日志记录接口,而是使用内置Trace功能,从一开始就不需要任何日志记录库.在我处理日志库之前,我已经在至少输出窗口中有我的跟踪信息,在这个开发阶段就足够了.

然后我想在我的应用程序中添加一个日志库,并Trace通过一个监听器耦合到它,而不是再写入日志代码.

您对此策略有何看法,并且是这些日志库的跟踪侦听器,还是其他可能或可行的快速实现的Enterprise Library?

logging log4net nlog .net-trace

6
推荐指数
1
解决办法
4312
查看次数

标签 统计

.net-trace ×2

.net ×1

asp.net ×1

c# ×1

log4net ×1

logging ×1

nlog ×1

trace ×1