我想通过记录业务事件来开始监控我的应用程序的性能。我一直在寻找类似于 log4net 或其他日志库的东西,但为性能/健康监控量身定制。
我的目标是使用性能计数器发布这些业务事件,但我并不觉得用性能计数器代码乱扔我的代码是个好主意。就像 log4net 如何抽象注销一样,是否有一个现有的库可以将性能/健康监控抽象到它自己的库中?
我想通过记录业务事件来开始监控我的应用程序的性能。我一直在寻找类似于 log4net 或其他日志库的东西,但为性能/健康监控量身定制。
我的目标是使用性能计数器发布这些业务事件,但我并不觉得用性能计数器代码乱扔我的代码是个好主意。就像 log4net 如何抽象注销一样,是否有一个现有的库可以将性能/健康监控抽象到它自己的库中?
您绝对应该尝试直布罗陀。您可以将它与PostSharp结合使用,您的性能监控将是小菜一碟。只需查看以下代码示例:
[GTrace]
public Connection ConnectToServer(Server server)
{
ConnectionStatus connectionStatus = server.TryConnect();
return connectionStatus;
}
日志中的结果将如下所示:
开始方法调用(你可以看到传递的参数)
结束方法调用
代码中没有废话,您只需要一个属性。属性可用于整个项目,不包括不需要的方法、命名空间、类或您需要的任何方法。享受!
编辑
忘了提到直布罗陀有一个非常丰富的客户端并支持您需要的任何指标,它太强大了: