PowerBI分析Exchange服務器IIS運行日誌

啟用狀態

PowerBI分析Exchange服務器IIS運行日誌

那麼在C:\inetpub\logs\LogFiles目錄下您才會看到如下日誌目錄及文檔,每一個站點會生成一個W3SVC的文檔夾存放日誌,比如默認站點是W3SVC1,Exchange Back End是W3SVC2

PowerBI分析Exchange服務器IIS運行日誌

可以先用Notepad++查看下這些日誌。可以看出基本是以空格為每一個值的劃分的

PowerBI分析Exchange服務器IIS運行日誌

我多收集了幾天的日誌,然後把這些log文檔拷貝到其他目錄

PowerBI分析Exchange服務器IIS運行日誌

接下來我將這些Log文檔全部利用Log Parser軟件轉成CSV文檔(Log Parser下載地址:https://www.microsoft.com/en-my/download/details.aspx?id=24659),為什麼要轉換成CSV呢?雖然PowerBI可以去讀Log的文檔並以空格為分隔符劃分列,但你會發現後面很多空格是沒有劃分出來的,或許是我遇到了吧,保險起見,這裏我就轉成了CSV文檔

先安裝好Log Parsr進程,接下來在日誌所在目錄我創建一個bat文檔,內容如下:

cd "E:\Logs\W3SVC1"

for /R %%f in (*.log) do (

"C:\Program Files (x86)\Log Parser 2.2\"logparser -i:W3C -o:csv "SELECT * INTO '%%f.csv' FROM '%%f'"

)

PowerBI分析Exchange服務器IIS運行日誌

打開PowerShell,執行這個bat腳本會批量的把這些Log文檔全部轉成csv文檔

PowerBI分析Exchange服務器IIS運行日誌

都轉換完畢後,把CSV文檔單獨放在一個文檔夾裏,接下來主要對默認站點的W3SVC1的CSV文檔進行分析,還是老樣子,先用PowerBI獲取數據,選擇文檔夾

PowerBI分析Exchange服務器IIS運行日誌

瀏覽到日誌所在目錄

PowerBI分析Exchange服務器IIS運行日誌

選擇組合——合併和編輯

PowerBI分析Exchange服務器IIS運行日誌

確定

PowerBI分析Exchange服務器IIS運行日誌

接下來我刪除第一二列

PowerBI分析Exchange服務器IIS運行日誌

然後關閉並應用

PowerBI分析Exchange服務器IIS運行日誌

等待加載完成

PowerBI分析Exchange服務器IIS運行日誌

首先拖一個餅狀圖看看狀態IIS的狀態碼佔比,從佔比瞭解運行情況,這裏可以看到餅狀圖裏顯示了狀態碼的分佈並顯示出了狀態碼

狀態碼的含義可以參考:https://support.microsoft.com/en-us/help/943891/the-http-status-code-in-iis-7-0-iis-7-5-and-iis-8-0

但這些狀態碼是否可以更為直觀的顯示出含義呢?這裏我準備了一個Excel表,整理下狀態碼和信息的關係

PowerBI分析Exchange服務器IIS運行日誌
PowerBI分析Exchange服務器IIS運行日誌

那麼右邊這些列各代表什麼含義呢?可以參考https://msdn.microsoft.com/en-us/library/windows/desktop/aa814385(v=vs.85).aspx

日誌文檔是一種可定製的ASCII文本格式,文檔中的字段前綴定義如下:

s

服務器操作

c

客户操作

sc

服務器到客户端的操作

cs

客户端到服務器操作

下面是我整理的W3C日誌的字段和解釋

PowerBI分析Exchange服務器IIS運行日誌

接下來我把上面整理出來的HTTP狀態碼Excel表也導入進PowerBI

PowerBI分析Exchange服務器IIS運行日誌

接下來選擇關係——管理關係

PowerBI分析Exchange服務器IIS運行日誌

新建

PowerBI分析Exchange服務器IIS運行日誌

選擇CSV裏的sc-status列,然後選擇Sheel1裏的狀態碼進行關聯,點擊確定

PowerBI分析Exchange服務器IIS運行日誌

點擊關閉

PowerBI分析Exchange服務器IIS運行日誌

關係圖裏就出現了一條線條關聯上了2個表

PowerBI分析Exchange服務器IIS運行日誌

接下來回到報表裏選擇剛才的餅狀圖,我把信息拖到詳細信息裏,這時你會發現餅狀圖裏原來的狀態碼全變成了含義的解釋,這樣更方便直觀理解了

PowerBI分析Exchange服務器IIS運行日誌

調整下值的參數

PowerBI分析Exchange服務器IIS運行日誌

接下來再創建一個環形圖,分析客户端IP源訪問請求佔比

PowerBI分析Exchange服務器IIS運行日誌

同理再創建一個服務端IP源訪問請求佔比

PowerBI分析Exchange服務器IIS運行日誌

接下來再分析客户端訪問請求類型佔比

PowerBI分析Exchange服務器IIS運行日誌

再拖一個時間切片器

PowerBI分析Exchange服務器IIS運行日誌

接下里再創建一個餅狀圖分析用户訪問請求佔比,看看誰訪問Exchange請求最多

PowerBI分析Exchange服務器IIS運行日誌

接下來再分析頁面訪問次數及平均響應時間

PowerBI分析Exchange服務器IIS運行日誌

接下來再統計每一個頁面狀態的發生次數

PowerBI分析Exchange服務器IIS運行日誌

最後羅列時間,來源IP地址,以及用户採用的什麼系統和瀏覽器或客户端訪問的Exchange分析

PowerBI分析Exchange服務器IIS運行日誌

最後再美化和排版就大功告成了,當然這裏介紹的是Exchange的日誌分析,其他採用微軟IIS作為WEB服務的都可以採用類似的方法來分析哦,畢竟IIS的日誌記錄都是一樣的這些字段

PowerBI分析Exchange服務器IIS運行日誌的更多相关文章

  1. Jexus 強勁、堅固、免費、易用的Linux ASP.NET服務器

    Jexus 強勁.堅固.免費.易用的Linux ASP.NET服務器 Jexus是一款Linux平台上的高性能WEB服务器和负载均衡网关,以支持ASP.NET.ASP.NET CORE.PHP为特色, ...

  2. 創建HTTP 服務器

    var http = require('http'); var fs = require('fs'); var server = http.createServer(function(req, res ...

  3. resin-pro-4.0.34 服務器在windows环境下的配置

    resin-pro-4.0.34 服務器在windows环境下的配置(轉載请注明作者:icelong) 到caucho網站上http://www.caucho.com/download/下載resin ...

  4. html5 服務器發送事件

    html5允許頁面獲得來自服務器的更新. 單項消息傳送: 頁面獲得服務器的更新. 以前頁面也可以獲得服務器的更新,但必須詢問服務器是否有可用的更新,而服務器發送事件是單向自動發送. 使用服務器發送事件 ...

  5. windows上開啟多個apache服務器

    1.安裝apache(這裡我用的是集成環境) 比較php版本 5.6  與 7.2 比較mysql版本 拓展: 注意:對個不同的版本的mysql,命令行進入,需要指明端口號,如:mysql -uroo ...

  6. io.js的服務器突破

    Node.js与io.js那些事儿 InfoQ中文站 05月20日 14:26 去年12月,多位重量级Node.js开发者不满Joyent对Node.js的管理,自立门户创建了io.js.io.js的 ...

  7. IDEA激活服務器

    IDEA: http://www.iteblog.com/idea/key.php webstorm11:http://15.idea.lanyus.com/

  8. 服務器提交協議衝突 (The server committed a protocol violation.)

    ---解決方法 (放在 app.config / web.config)--- <system.net> <settings> <httpWebRequest useUn ...

  9. SQL使用存儲過程訪問不同服務器

    用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB', 'sql服 ...

随机推荐

  1. C++ 3D物理引擎库BulletPhysics基本使用

    前言:最近在接触OpenGl和DX11的时候,顺便学习了Bullet这个3D物理引擎的基本使用,记录一下. |BulletPhysics介绍 BulletPhysics是一个跨平台的开源物理引擎,也是 ...

  2. python ddt数据驱动(简化重复代码)

    在接口自动化测试中,往往一个接口的用例需要考虑 正确的.错误的.异常的.边界值等诸多情况,然后你需要写很多个同样代码,参数不同的用例.如果测试接口很多,不但需要写大量的代码,测试数据和代码柔合在一起, ...

  3. 【译】《C# Tips -- Write Better C#》

    [译]<C# Tips -- Write Better C#> <C# 奇淫巧技 -- 编写更优雅的 C#> 目录 介绍(Introduction) 第一部分:各种奇淫巧技(P ...

  4. 杭电ACM2019--数列有序!

    数列有序! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  5. 基于Windows服务的WCF

    (1)创建WCF 代码示例: [ServiceContract] public interface ILimsDBService { [OperationContract] int ExecuteSq ...

  6. java_IO流

    IO流概述及分类 Reader  InputStream  OutputStream  Writer都是Object的直接子类 字节流: 字节输入流 InputStream(抽象类) |---File ...

  7. W3C 代码标准规范

    W3C通过设立领域(Domains)和标准计划(Activities)来组织W3C的标准活动,围绕每个标准计划,会设立相关的W3C工作组织(包括工作组.社区组.商务组等).W3C会根据产业界的标准需求 ...

  8. 头部banner根据网址高亮

    $(function(){ var urlstr = location.href; $(".nav li a").each(function () { if ((urlstr + ...

  9. (三) Keras Mnist分类程序以及改用交叉熵对比

    视频学习来源 https://www.bilibili.com/video/av40787141?from=search&seid=17003307842787199553 笔记 Mnist分 ...

  10. thymeleaf th:href url传递多参数

    <a th:href="@{/teacherShowMember(class_id=${class.classId},class_name=${class.className})}&q ...