摘要: 微软动态CRM专家罗勇 ,回复321或者20190322可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!

分析Dynamics 365 Customer Engagement性能有时候需要分析前端服务器的IIS Log,这时候可以用一个工具,就是 Log Parser,下载地址是 https://www.microsoft.com/en-us/download/details.aspx?id=24659 。

下载完毕安装后,打开安装目录 C:\Program Files (x86)\Log Parser 2.2 ,将其中的文件 LogParser.exe 复制到 C:\Windows\System32 文件夹中,这样在cmd或者PowerShell中就可以直接使用命令分析日志了,也可以方便的查看帮助。打开界面输入 logparser 结果如下:

如果IIS 没有启动Log功能(默认安装情况下不启用),建议先启用。

在服务器上输入 INETMGR 打开 Internet Infomation Services (IIS) Manager ,打开IIS上的Logging

IIS日志默认情况下是没有记录Bytes Sent和Bytes Received两个字段的,建议勾选。从Directory: 就知道IIS日志存放的路径。

如果访问量很大,IIS Log文件会很大,打开麻烦,可以考虑每个日志文件达到多大的时候生成一个新文件来记录IIS 日志。

将 IIS Log拿到后就可以用Log Parser对它进行分析了,我这里查看一个文件所有记录,以另外一种格式来看看。首先截图原文是啥样的,不是很好阅读。

我是用下面语句来以另外一种格式化一下以另外一种形式展示:

logparser "select * from D:\u_ex190322.log" -o:datagrid

展示的样子如下:

默认只展示10行,可以点击下面的【All rows】按钮。列太多,我选一些列来看看。

logparser "select date,time,c-ip,cs-method,cs-uri-stem,cs-uri-query,sc-status,sc-bytes,cs-bytes,time-taken from D:\u_ex190322.log" -o:datagrid

效果如下图:

我这里简单对几个列的含义做个说明(为本人理解,不对正确性做保证):

列标题 含义 说明
date 请求发生的日期 UTC 0时区日期
time 请求发生的时间 UTC 0时区时间
c-ip Client IP Address 请求发起的客户端IP
cs-uri-stem URI Stem

摘自:https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wmlog/fc4b49d7-e83f-4389-8063-414f8bad80dd

This field MUST specify the URL actually used by the client. Any query strings MUST be excluded from the URL. (This means that the value of the cs-uri-stem field is equal to the URL actually used by the client, truncated at the first "?" character.)

我简单理解就是访问的网址 ? 符号的前面部分

cs-uri-query URI Query

摘自:https://docs.microsoft.com/en-us/dotnet/api/system.uri.query?view=netframework-4.7.2

The Query property contains any query information included in the URI. Query information is separated from the path information by a question mark (?) and continues to the end of the URI. The query information returned includes the leading question mark.

我简单理解就是访问的网址 ? 符号的后面部分

sc-status Protocal Status 对于HTTP请求来讲就是返回的HTTP status code
cs-method Method 对于HTTP请求来讲就是请求的动作把,比如GET,POST,DELETE,PUT等
sc-byte Bytes Sent 就是服务器端给客户端发送内容的大小,以字节为单位
cs-byte Bytes Received 就是客户端给服务器端发送内容的大小,以字节为单位
time-taken Time Taken

摘自:https://support.microsoft.com/en-us/help/944884/description-of-the-time-taken-field-in-iis-6-0-and-iis-7-0-http-loggin

The time-taken field measures the length of time that it takes for a request to be processed. The client-request time stamp is initialized when HTTP.sys receives the first byte of the request. HTTP.sys is the kernel-mode component that is responsible for HTTP logging for IIS activity. The client-request time stamp is initialized before HTTP.sys begins parsing the request. The client-request time stamp is stopped when the last IIS response send completion occurs.

Beginning in IIS 6.0, the time-taken field typically includes network time.

Note The value in the time-taken field does not include network time if one of the following conditions is true:

  • The response size is less than or equal to 2 KB, and the response size is from memory.
  • TCP buffering is used. Applications that use HTTPAPI.dll can set the HTTP_SEND_RESPONSE_FLAG_BUFFER_DATA flag to enable TCP buffering on Windows Server 2003 Service Pack 1 and later. This allows the server to send all of the response data to the client without having to wait for the client’s corresponding acknowledgements.

我来简单理解就是请求从接到到发送给客户端消耗的时间,应该是毫秒为单位。如果客户端请求的或者服务器端返回的内容比较大,且网络不是很好的话,是可能比较耗时的。

当然也可以做一些统计,比如统计耗时超过10s的请求数量:

logparser "select count(*) from D:\u_ex190322.log where time-taken >=10000"

当然还可以导出部分请求,示例如下:

logparser "select date,time,c-ip,cs-method,cs-uri-stem,cs-uri-query,sc-status,sc-bytes,cs-bytes,time-taken from D:\u_ex190322.log where time-taken >=10000" -o:datagrid

在打开的新窗口中是可以显示所有符合条件记录(使用【All rows】按钮),然后用 Ctrl + A 全选,Ctrl + C 复制,可以直接粘贴到Excel中。

日志分析工具Log Parser介绍的更多相关文章

  1. 日志分析工具 Log Parser

    微软的Log Parser, 下载地址 https://www.microsoft.com/en-us/download/details.aspx?id=24659 支持多种文件格式的分析,输入输出, ...

  2. IIS日志分析工具-Log Parser

    下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=24659 参考链接: https://www.cnblogs.com/fu ...

  3. Log Parser 微软强大的日志分析工具

    Log Parser(微软网站下载)是微软公司出品的日志分析工具,它功能强大,使用简单,可以分析基于文本的日志文件.XML 文件.CSV(逗号分隔符)文件,以及操作系统的事件日志.注册表.文件系统.A ...

  4. 日志分析工具-ApexSQL介绍

    原文:日志分析工具-ApexSQL介绍 使用场景:业务数据异常变化,通过代码分析不出来的时候,迫不得已需要通过日志来分析 下载地址:http://www.apexsql.com/Download.as ...

  5. GoAccess日志分析工具使用文档

    ----Sevck 2016/3/4 17:24:13 #1软件说明: GoAccess是一款开源.实时,运行在命令行终端下的web日志分析工具.该工具提供快速.多样的HTTP状态统计,可以令管理员不 ...

  6. 日志分析工具ELK配置详解

    日志分析工具ELK配置详解 一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分 ...

  7. 可视化日志分析工具Gltail的安装与使用

    可视化日志分析工具Gltail的安装与使用      GlTail.rb 是一款带有浓郁的 Geek 风格的可视化日志分析工具,它采用 Ruby 技术构建,并利用 OpenGL 图形技术进行渲染,呈现 ...

  8. IIS日志分析工具

    发现一个强大的图形化IIS日志分析工具:Log Parser Studio. 安装 需要先安装Log Parser下载地址:http://www.microsoft.com/en-us/downloa ...

  9. MySQL慢查询日志总结 日志分析工具mysqldumpslow

    MySQL慢查询日志总结 - 潇湘隐者 - 博客园 https://www.cnblogs.com/kerrycode/p/5593204.html 2016-06-17 10:32 by 潇湘隐者, ...

随机推荐

  1. typeconfig.json配置说明

    如果一个目录下存在一个tsconfig.json文件,那么它意味着这个目录是TypeScript项目的根目录. 不带任何输入文件的情况下调用tsc,编译器会从当前目录开始去查找tsconfig.jso ...

  2. [区块链] 拜占庭将军问题 [BFT]

    背景: 拜占庭将军问题很多人可能听过,但不知道具体是什么意思.那么究竟什么是拜占庭将军问题呢? 本文从最通俗的故事讲起,并对该问题进行抽象,并告诉大家拜占庭将军问题为什么在区块链领域作为一个重点研究问 ...

  3. 你真的理解 Spring Boot 项目中的 parent 吗?

    前面和大伙聊了 Spring Boot 项目的三种创建方式,这三种创建方式,无论是哪一种,创建成功后,pom.xml 坐标文件中都有如下一段引用: <parent> <groupId ...

  4. java游戏开发杂谈 - 实现游戏主菜单

    经常玩游戏的同学,大家都知道,游戏都会有个主菜单,里面有多个菜单选项:开始游戏.游戏设置.关于游戏.退出游戏等等,这个菜单是怎么实现的呢. 有一定桌面软件开发基础的同学可能会想到,用JButton组件 ...

  5. SpringBoot启动原理分析

    用了差不多两年的SpringBoot了,可以说对SpringBoot已经很熟了,但是仔细一想SpringBoot的启动流程,还是让自己有点懵逼,不得不说是自己工作和学习的失误,所以以此文对Spring ...

  6. Dynamics 365 CE的插件/自定义工作流活动中调用Web API示例代码

    微软动态CRM专家罗勇 ,回复325或者20190428可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! 现在Web API越来越流行,有时候为了程序更加健壮,需要在插件 ...

  7. Android之Lottie动画详解

    文章大纲 一.Lottie介绍二.Lottie实战三.项目源码下载四.参考文章   一.Lottie介绍 1. 什么是Lottie   Lottie是Android和iOS的移动库,用于解析Adobe ...

  8. Android 上传图片到服务器二--------调用相机7.0以上权限问题

    [目录] (一)上传图片到服务器一 ---------------------------------Android代码 (二)上传图片到服务器二--------------------------- ...

  9. 不一样的 SQL Server 日期格式化

    不一样的 SQL Server 日期格式化 Intro 最近统计一些数据,需要按天/按小时/按分钟来统计,涉及到一些日期的格式化,网上看了一些文章大部分都是使用 CONVERT 来转换的,SQL Se ...

  10. 查看三种MySQL字符集的方法(转)

    MySQL字符集多种多样,下面为您列举了其中三种最常见的MySQL字符集查看方法,该方法供您参考,希望对您学习MySQL数据库能有所启迪. 一.查看MySQL数据库服务器和数据库MySQL字符集. m ...