转载

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

失败请求跟踪规则( FailedRequest Tracing Rules )是 IIS7 中对请求处理进行诊断的强大的工具。我们本篇文章将会带领大家一步步的来配置失败请求跟踪规则,并且告诉大家如何使用这些信息来诊断 ARR

要真正的理解本篇文章要讲述的知识,需要知道如何在 IIS7 对失败的请求进行跟踪诊断,有关这部分知识,我们后续会补充上来,大家自行阅读。

我们本篇文章的目的就是如何配置失败请求的跟踪规则,例如如何查看跟踪信息对 ARR 进行故障分析与诊断。

首先我们来看看如何配置失败请求的跟踪规则,我们以 Win 2008 为例子,在 Win7 中的 IIS 没有这个功能。

配置失败请求的跟踪规则

1. 打开 IIS 的管理界面

2. IIS 的站点中选择一个要对失败请求进行跟踪的站点,例如要对 Default Web Site 跟踪。

3. 选择站点,然后在“操作”面板中的“配置”下,选择“失败请求跟踪”,如下: IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

4. 在弹出的窗口中,启用跟踪,,并且配置跟踪文件的路径和文件的小大,如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

5. 点击“确认”,保存修改。

6. 然后,选中“ Default Web Site ”,然后选中“失败请求跟踪规则”,如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

7. 双击“失败请求跟踪规则”,然后再“操作”面板中,点击“添加”,如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

8. 在弹出的窗口中可以选中要进行跟踪的页面文件,这里我们选中“所有内容”,然后点击“下一步”,看到如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

在新的界面中,我们设置:如果请求的状态处于 200~399 ,我们就进行跟踪,对于其他的,我们不跟踪。

9. 点击“下一步”,看到下面的界面:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

在这里,我们只选中“ WWW Server ”,并且在右边的“区域”,我们只选中图中的两个。因为 ARR 只是依赖这两个组件。

10. 点击“完成”,就可以了。

以后只要有请求发送给 ARR ,并且符合之前的配置的失败规则,那么相关的信息就会记录下来。其实这一点和我们在程序中记录日志道理是一样的。

分析失败请求跟踪规则日志

1. 导航到响应的目录,打开我们的跟踪日志,这个路径就是我们之前配置的,默认的路径是“ %SystemDrive%/inetpub/Logs/FailedReqLogFiles/ ”。

2. 选中属于某个站点的日志文件夹,我们之前是跟踪 Default Web Site ,所以我们选择“ W3SVC1 ”,因为这里的文件夹是以站点的 ID 命名的, Default Web Site ID 1 ,那对应的跟踪文件夹就是 W3SVC1 ,如果某个站点 ID 2 ,那么文件夹就是 W3SVC2 ,以此类推。如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

我们可以在 IIS 中查看任何一个站点的 ID :选中站点,在“操作”面板中,选择“高级设置”,如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

3. 打开文件夹,看到很多的 XML 文件,如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

4. 找到一个名字为: fr00001.xml 的文件,用浏览器打开。可以看到很多的信息,如下:

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

5. 对于上面列出的信息,重点关注以下信息:

GENERAL_REQUEST_HEADERS

Headers :显示被 ARR 接受到的 Http 头信息

ARR_REQUEST_ROUTED

WebFarm :告诉请求被那个 WebFarm 处理

Server :告诉请求被转发给了哪个服务器

Algorithm: 告诉那个负载均衡算法被使用

RoutingReason: 告诉为什么要将一个请求转发给选中的服务器

ARR_SERVER_STATS

State :目标服务器的可用情况

TotalRequests :多少给请求被发送给了这台服务器

CurrentRequests :这台服务器此时的并发请求数量

BytesSent :一直发送给这台服务器多少数据( KB

BytesReceived: 服务器一共接受了多少数据( KB

ResponseTime: 服务器的平均响应时间

还有更多信息,都非常好理解 ! 大家可以多多的尝试,阅读!

相关内容

  • 构建高性能.NET应用之配置高可用IIS服务器-第一篇:IIS必须掌握的知识

  • 构建高性能.NET应用之配置高可用IIS服务器-第二篇 IIS请求处理模型

  • 构建高性能.NET应用之配置高可用IIS服务器-第三篇 IIS中三个核心组件的讲解(上)

  • 构建高性能.NET应用之配置高可用IIS服务器-第四篇 IIS常见问题之:工作进程回收机制(上)

  • 构建高性能.NET应用之配高可用IIS服务器-第五篇 IIS常见问题之:工作进程回收机制(中)

  • IIS负载均衡-Application Request Route详解第一篇: ARR介绍

  • IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm

  • IIS负载均衡-Application Request Route详解第三篇:使用ARR进行Http请求的负载均衡

  • IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构

  • IIS负载均衡-Application Request Route详解第五篇:使用ARR来配置试点项目

作者介绍:汪洋,哪合伙 CEO ,曾大汉电子商务有限公司首席技术官,副总裁,负责公司产品、技术、运营,参与商业模式设计。 华康移动医疗前 CTO ,副总裁,首席架构师。微软 MVP

.NET社区新闻,深度好文,微信中搜索 dotNET跨平台 或扫描二维码关注

IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR

原文  http://mp.weixin.qq.com/s?__biz=MzAwNTMxMzg1MA==&mid=2654067560&idx=1&sn=12909336f90aefcff425a6b0db46959f&scene=0#wechat_redirect
正文到此结束
Loading...