将 Miniprofiler 集成到控制台 WCF 自主机
Posted
技术标签:
【中文标题】将 Miniprofiler 集成到控制台 WCF 自主机【英文标题】:Integrate the Miniprofiler to Console WCF Self Host 【发布时间】:2013-06-28 14:11:29 【问题描述】:如何将 Miniprofiler 集成到托管 WCF 服务的控制台自托管应用程序。 如何了解已执行的 DB hits 以及使用 Miniprofiler 通过 selfhost 执行的查询?
Host DB Layer 是通过 WCF 访问的实体框架。
【问题讨论】:
【参考方案1】:在一般情况(不是 WCF 自托管)中,关键是通过MiniProfiler.Settings.ProfilerProvider
提供分析器提供程序。这是必须能够从环境状态解析分析器的东西。默认情况下,它选择WebRequestProfilerProvider
- 但这显然不适用。最简单的方法是继承BaseProfilerProvider
,它只有几个方法可以实现 - 你可以查看WebProfilerProvider
来查看示例,特别是在Stop
中发生的非平凡情况结果未被丢弃的地方。大概您的面向 WCF 的代码将使用 OperationContext.Current
作为环境状态。
不过,下一个问题是:您将如何处理结果?将它们记录到控制台?将它们附加到 WCF 消息中?大多数事情都是可能的,但需要以不同的方式实施。系统本身只提供了一个基于 Web 的 UI,但您可以通过计时数据进行扩展以做任何您需要的事情。
您可能还想看看:
http://nuget.org/packages/MiniProfiler.WCF/ https://github.com/SamSaffron/MiniProfiler/blob/master/StackExchange.Profiling.Wcf/WcfRequestProfilerProvider.cs https://github.com/SamSaffron/MiniProfiler/tree/master/Sample.Wcf【讨论】:
以上是关于将 Miniprofiler 集成到控制台 WCF 自主机的主要内容,如果未能解决你的问题,请参考以下文章
转:asp.net mvc ef 性能监控调试工具 MiniProfiler