利用Trace Log在WCF应用中排错

前言

随着WCF越来越多地被应用到实际系统中,其优势也越来越多地被大家所接受。但是WCF作为一种典型的分布式应用,也具有分布式应用固有的弊病,那就是开发和维护相对比较复杂。特别是在错误排查方面,比非分布式程序要复杂很多。那么怎么样才能更有效地排查WCF中发生的错误呢?这就不得不提到WCF的Trace Log功能。本文将在以IIS 6.0作为Host的WCF服务为实例谈谈Trace Log的应用。

在开始之前,先一起来认识两个朋友:SvcConfigEditor 和 SvcTraceViewer。

【SvcConfigEditor】:微软提供的用来辅助编辑WCF配置文件的工具。(当然也可以直接编辑Config文件,但是用工具方便一些。)

【SvcTraceViewer】:微软提供的用来查看WCF的Trace Log的工具。

它们两个的路径都是 C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin。

配置Config文件以启用Trace Log

启动SvcConfigEditor.exe,能看到如下界面:

通过File —> Open —> Config File打开所要编辑的Config文件。(web.Config文件),选中Diagnostics节点,显示如下:

时间: 2024-12-18 02:44:50

利用Trace Log在WCF应用中排错的相关文章

COM(VB/VBA/Script)利用服务标记调用WCF服务之四:使用配置文件

这几天友人同学说他在COM利用服务标记调用WCF服务的时候遇到一个问题,就是他返回的的Soap消息 大于65536这个wsHttpBinding的缺省值,引发调用错误.需要将MaxReceivedMessageSize更改成可以容纳 大消息内容的值.在我前面的三篇文章中使用的都是缺省的wsHttpBinding,所以不存在这个问题.现在 需要更改缺省值自然就需要增加配置来达到目的.目前最关键的问题就是:是否能让VB/VBA/Script来使 用配置文件呢?如果可以,那如何让VB,VBA, Scr

COM(VB/VBA/Script)利用服务标记调用WCF服务之三使用WSDL契约

前面我们介绍了使用MEX契约的服务标记在COM中调用WCF服务,这种方式是通过MEX终结点动态取得元 数据,使用起来是比较方便:但是有时服务的元数据中可能包含恶意用户可以利用的关于应用程序的敏感 信息,也就是说为了安全考虑有些服务可能不会通过MEX公布元数据信息.如果哦某些服务没有公布元数 据信息,用类型化有比较麻烦,针对这种情况我们该如何在COM中调用WCF服务呢?这时我们可以使用WSDL 契约来进行WCF服务的调用,使用这种方式和使用MEX类似,同样不需要进行类型的注册,信息都是通过动 态得

COM(VB/VBA/Script)利用服务标记调用WCF服务之二使用MEX契约

第一步:创建WCF服务 上一篇我们使用类型化契约的服务标记在COM中调用WCF服务,不过这个有一 定的局限性,因为需要注册类型,所以需要.Net FrameWork,但是在很多情况下COM客户端所在的环境没有 .Net Framework,比如说在Excel中,需要调用一个WCF服务来计算某个单元格的值,而且这个Excel文件可 能分发到许多机器上,你总不能给每台机器都装一个.Net Framework,同时都去给它注册所需的类型吧. 针对这种场景,我们可以使用MEX契约的服务标记来动态得到服务

[WCF]配置文件中Certificate 的encodeValue怎么设置?

在WCF配置文件中经常会出现这样的属性:   <identity> <certificate encodedValue="large string!!!!!!!" /> </identity>     那么这其中的encodedValue如何设置?   1.把cer文件(证书)导出为base64格式 a,使用mmc找到需要的证书  -- (Add Snap-In) b,右击证书  导出    c,base64 encoded x509(.cer) 2

c++-如何利用C++来解析SQL语句中的select语句?

问题描述 如何利用C++来解析SQL语句中的select语句? SELECT * FROM stu WHERE ((Name = "Jack") AND ((Age > 18) OR (Height > 170))) 这是一条SQL语句,怎么用C++解析它,并从内存数据中输出结果?求大神给点思路即可.... 解决方案 你是要解析?还是要执行? 如果要执行SQL语句,需要学习ADO编程,可以百度一下vc ado编程. 解决方案二: 有c++和数据库对接的各种库的,mysql的

WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭

原文:WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭 在我们开发WCF项目的时候,常常会碰到一些莫名其妙的错误,有时候如果根据它的错误提示信息,一般很难定位到具体的问题所在,而由于WCF服务的特殊性,调试起来也不是那么方便,因此往往会花费不少时间来进行跟踪处理.本文介绍我在我在我的框架里面使用WCF服务的时候,出现的一个常见错误的处理方法,它的提示信息是:基础连接已经关闭: 连接被意外关闭.这种情况我碰到的有两种,一种是返回DataTable的时候出现的,一种是返回实体类

怎样利用vb.net向ACCESS库中存储图片

问题描述 怎样利用vb.net向ACCESS库中存储图片 解决方案 解决方案二:http://topic.csdn.net/t/20060130/11/4537305.html解决方案三:有没有vb.net的实例啊?解决方案四:DimC_FilestreamAsSystem.IO.FileStreamC_Filestream=NewSystem.IO.FileStream(strPicPath,IO.FileMode.Open,IO.FileAccess.Read)Dimbt(C_Filestr

越来越注重利用知识产权参与到市场竞争中

据国家知识产权局最新统计数据显示,2012年,国家知识产权局共受理通过<专利合作条约>(PCT)途径提交的国际专利申请1.9926万件,较上年增长14.0%.其中,1.8145万件来自国内,占91.1%,同比增长12.8%:1781件来自国外,同比增长28.7%.从地区分布来看,2012年,PCT国际专利申请超过100件的省(区.市)达到16个.其中,广东申请9211件,排名第一.北京.上海依次以2705件.1024件,分列第二.三位.江苏(915件).浙江(639件).山东(531件).湖南

PHP如何将log信息写入服务器中的log文件_php实例

将log信息写入服务器中的log文件文件,折腾了一大圈终于找到了解决方案,具体内容如下: 折腾: [记录]php中如何写类和如何使用类 期间,需要整理出一份,可配置的,通用的,log系统. 支持写入log信息到log文件中. [折腾过程] 1.搜: php log to file 参考: PHP: error_log – Manual PHP: syslog – Manual How to create logs with PHP – Web Services Wiki Write to a l