使用Fiddler排查CRM疑难

Fiddler是一个HTTP调试代理服务器. 它可以记录下电脑和Internet的所有HTTP通讯.Fiddler可以监控所有HTTP通讯,设置断点,并且操作收入\传出的数据.

 

在CRM疑难排查的过程中,Fiddler是一个很好的排查客户端的工具.CRM环境中,客户端和服务器的通讯就是通过HTTP\HTTPS,而这些都可以被Fiddler诊断出其处理结果是否成功并以友好的方式呈现出来.需要用到Fiddler调试的疑难情况一般为:

-          在CRM应用程序里面的的某些操作失败,并遇到具体错误信息:fiddler可以诊断出这些操作后面的哪些URL被成功处理了,哪些失败了并引发了这个错误信息,比如:

  • 更改用户所属部门的动作失败
  • 共享联系人的动作失败

-          特定IE客户端才发生的问题: 其他IE客户端工作正常,确定只有特定的IE客户端才会产生问题,那么有可能是这台IE浏览器的问题,比如:

  • 特定的某些IE端访问CRM速度很慢
  • 在其他IE客户端端可以完成的动作在这个IE端失败

-          还有其他很多情况,收集到Fiddler日志会极大地帮助排查疑难的根结

 

 

本文讲主要介绍Fiddler的具体使用方法. 本博客已经在两篇文章中介绍了Fiddler的工作原理.请参见:

Fiddler – 第一部分: HTTP调试

https://blogs.technet.com/b/crmchina/archive/2012/05/20/fiddler-http.aspx

Fiddler - 第二部分: HTTP性能

https://blogs.technet.com/b/crmchina/archive/2012/09/24/fiddler.aspx

 

 

 

如何使用Fiddler处理CRM HTTP通讯

  1. 从Fiddler官网下载Fiddler https://www.fiddler2.com/fiddler2/
  2. 在CRM客户端机器上安装Fiddler
  3. 通过开始>所有程序>Fiddler2,启动Fiddler
  4. 运行CRM并做出一些数据访问动作
  5. 回到Fiddler界面,将会发现Fiddler已经记录下来HTTP请求和请求的返回结果: 左边Web Session是HTTP请求列表,右边是HTTP请求的具体数据和内容 

 

 

 

如何使用Fiddler处理CRM HTTPS通讯

在一些情况下CRM通讯是通过加密的方式,如CRM Online或者CRM On-Premise配置了SSL加密通讯.为了疑难排查,可以设置Fiddler来解密SSL通讯.

注意:

-          开启Fiddler的SSL解密,将会对所有的SSL通讯进行解密分析,包括用户名和密码.

-          在每次使用Fiddler排查HTTPS后,请参照下面”取消Fiddler对HTTPS解密”章节取消SSL解密,这样将不会有任何的安全隐患.

 

  1. 从Fiddler官网下载Fiddler https://www.fiddler2.com/fiddler2/
  2. 在CRM客户端机器上安装Fiddler
  3. 通过开始>所有程序>Fiddler2,启动Fiddler
  4. 打开Fiddler>Tools>Fiddler Options,在HTTPS选项卡,勾选” Decrypt HTTPS traffic
     

Fiddler会弹出两个窗口询问是否信任Fiddler并安装证书已解密HTTPS通讯.选择Yes和是,并在Fiddler Options窗口选择OK.

 

5. 运行使用HTTPS通讯的CRM,并做出一些数据访问动作

6. 回到Fiddler界面,将会发现Fiddler已经记录下来对CRM数据访问过程中的HTTPS请求和请求的放回结果: 左边Web Session是HTTP请求列表,右边是HTTP请求的具体数据和内容 

 

取消Fiddler对HTTPS解密

在使用Fiddler结束后,应该取消Fiddler对HTTPS的解密以及移除Fiddler安装在IE的证书.具体步骤为:

  1. 通过开始>所有程序>Fiddler2,启动Fiddler
  2. 打开Fiddler>Tools>Fiddler Options,在HTTPS选项卡,取消勾选” Decrypt HTTPS traffic
     
  3. 点击”Remove Interception Certificates”, fiddler会弹出消息确认是否要移除Fiddler证书.选择是,并在Fiddler Options窗口选择OK.
     
  4. 到IE的Internet Options查看证书是否被成功移除: IE> 工具>Internet选项>内容选项卡>证书, 查看并确认个人和受信任的根证书颁发机构不包含Fiddler证书,如果有,则手动移除掉.
     
  5. Fiddler对HTTPS解密应该已经被取消.可以打开Fiddler,做HTTPS访问来确认Fiddler没有再记录HTTPS请求内容.

 

 Leola Xu许亚男