将 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

MiniProfiler 列出的额外查询

Miniprofiler gem 生成大量 404 错误

无法安装程序包MiniProfiler

WCF 托管在 IIS 中,连接到具有集成安全性的数据库时出现问题

将 WCF 服务中使用的实体框架连接字符串包含到自托管控制台应用程序中的正确方法是啥?