1

我们需要向我们的 WCF 应用程序添加一个新的分析功能,用于记录在应用程序中花费的时间。我正在查看 PostSharp 以获取应用日志记录的约定驱动方法,并且需要一些关于如何实际记录日志的输入。我已经使用 StopWatch 创建了一个用于记录目的的自定义类,并且可以通过我的 WCF 应用程序的各个层记录这些步骤。但是,我想知道是否有一个线程安全的替代库可以与 PostSharp 一起用于此目的。我遇到过 MiniProfiler,但它似乎主要用于 ASP.NET MVC 应用程序。我应该考虑的任何其他框架还是应该只使用我的自定义类?谢谢

4

2 回答 2

0

PostSharp 本身是线程安全的。如果写得不好,您编写的方面可能是线程不安全的,但总有一种方法可以使它们成为线程安全的。

如果您正在使用 OnMethodBoundaryAspect 并且需要将某些内容从 OnEntry 传递到 OnSuccess,请将初始秒表值存储在 OnMethodExecutionArgs.MethodExecutionTag 中。

于 2012-04-13T20:31:46.097 回答
0

我过去使用IClientMessageInspector在 custom 上实现了类似的操作IEndpointBehavior。根据您想要的日志记录类型,这可能会奏效。以下链接中有一个示例

IClientMessageInspector 接口

于 2012-04-11T14:10:11.130 回答