很多企业都有用Exchange Server来构建自己的企业邮箱,但做邮件统计的时候,自带的Exchange toolboxs总是不能很友好的展示出您想查询或统计的结果,要么就是借助的第三方的反垃圾网关设备来完成邮件的查询和统计,今天我将采用PowerBI Desktop来实现查询,统计和自己检索的功能,仅仅只是利用跟踪日志。

在这里我的环境是Exchange Server 2013,传输的日志默认在传输角色服务器Exchange安装所在盘符的如下位置

C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\MessageTracking

clip_image001

但这里只需要“MSGTRK+日期.log”文件

clip_image002

在这些日志文件中每一个字段表示什么含义,可以参考https://technet.microsoft.com/zh-cn/library/bb124375(v=exchg.160).aspx

如果您发现没有这些日志那么需要检查如下位置是否开启跟踪日志

clip_image003

接下来讲利用这些传输日志从多种维度来分析Exchange用户使用的情况,在这里我将MessageTracking目录复制到一个单独的位置,打开PowerBI获取文件夹为数据

clip_image004

在更多选项中选择文件——文件夹

clip_image005

选择文件夹所在位置

clip_image006

点击组合下的合并和编辑

clip_image007

点击确定

image

点击确定后会弹出一个编辑查询的对话框

image

勾选视图中的编辑栏

clip_image010

接下来在空白处右键新建查询——空查询,一个名为Var_LogFolder的文件化变量

clip_image011

设置E:\MessageTracking日志存放路径

clip_image012

并将这个查询1重命名为Var_LogFolder

clip_image013

回到MessageTracking表点击源进行设置,将文件获取路径改为空查询设定的变量名Var_LogFolder,这样变量名指向的跟踪日志所在目录位置,这样会自动加载跟踪日志所在目录的全部日志文件

clip_image014

接下来选择第一列,然后点击删除其他列

clip_image015

接下来合并二进制文件

clip_image016

然后双点合并好的二进制文件

clip_image017

接下来把后面的步骤都删除掉(点击红色的X删除)

clip_image018

接下来定义每一列的数据类型为文本

clip_image019

接下来删除最前面4行

clip_image020

输入4,确定

QQ截图20180525125245.jpg

接下来将第一行用作标题

clip_image022

接下来选择第一列,将第一列的数据类型从文本改成日期/时间

clip_image023

接下来还是选择第一列,点击复制列

clip_image024

将复制到最后一列的标题重命名为Date

clip_image025

将total-bytes和recipient-count和Date这3列设置数据类型为整数

clip_image026

接下来将recipient-address设置为计数行

clip_image027

点击recipient-address旁边的符号,选择扩展到新行

clip_image028

选择第一列,执行删除错误

clip_image029

最后关闭并应用

clip_image030

等待加载完成

clip_image031

接下来就可以开始创建可视化视图了

先创建一个切片器,该切片器主要以日期为主

clip_image032

选择列表

clip_image033

在改切片器里开启全部和取消单选(允许多选)

clip_image034

接下来再创建一个堆积条形图,统计邮件总计数,message-id是计数(非重复)

clip_image035

选择为非重复

clip_image036

接下来再创建一个堆积柱形图,统计外发邮件总计

  • event-id是邮件事件类型,这个类型选择DELIVER表示邮件已传递到本地邮箱

clip_image038

同样的方法创建一个接收邮件排行榜,source是计数

  • source是负责事件的Exchange传输组件,这个类型选择STOREDRIVER表示事件源是来自本地邮箱服务器上提交的MAPI(如果您的单位Exchange绑定了多个邮件域名,那么sender-address这里是或关系)

image

接下来创建接收件总计大小,total-bytes是求和

  • total-bytes:以字节为单位的邮件总大小,包括所有附件;

  • event-id是邮件事件类型,这个类型选择DELIVER表示邮件已传递到本地邮箱

clip_image042

接下来创建内部用户发送邮件排行榜,message-id是计数(非重复)(如果您的单位Exchange绑定了多个邮件域名,那么sender-address这里是或关系)

  • sender-address:Sender: 头字段中指定的电子邮件地址,如果 Sender: 字段不存在,则为 From: 头字段中指定的电子邮件地址;

  • message-id:邮件头中 Message-Id: 头字段的值。如果 Message-Id: 头字段不存在或为空,则 Exchange 为其分配一个任意值。该值在邮件生存期内是常量。对于在 Exchange 中创建的邮件,该值的格式为 <GUID@ServerFQDN>,包括尖括号 (< >)。例如,<4867a3d78a50438bad95c0f6d072fca5@mailbox01.contoso.com>。其他邮件系统可能使用不同的语法或值;

  • event-id是邮件事件类型,这个类型选择RECEIVE表示邮件由传输服务的 SMTP 接收组件接收或由分拣或重播目录发送(源:SMTP),或邮件已从邮箱提交至邮箱传输提交服务(源:STOREDRIVER)

clip_image043

接下来创建内部用户发送邮件总数(如果您的单位Exchange绑定了多个邮件域名,那么sender-address这里是或关系)

  • event-id是邮件事件类型,这个类型选择RECEIVE表示邮件由传输服务的 SMTP 接收组件接收或由分拣或重播目录发送(源:SMTP),或邮件已从邮箱提交至邮箱传输提交服务(源:STOREDRIVER)

  • message-id:邮件头中 Message-Id: 头字段的值。如果 Message-Id: 头字段不存在或为空,则 Exchange 为其分配一个任意值。该值在邮件生存期内是常量。对于在 Exchange 中创建的邮件,该值的格式为 <GUID@ServerFQDN>,包括尖括号 (< >)。例如,<4867a3d78a50438bad95c0f6d072fca5@mailbox01.contoso.com>。其他邮件系统可能使用不同的语法或值;

  • sender-address:Sender: 头字段中指定的电子邮件地址,如果 Sender: 字段不存在,则为 From: 头字段中指定的电子邮件地址;

clip_image044

接下来创建外部用户对内发送邮件排行榜(如果您的单位Exchange绑定了多个邮件域名,那么sender-address这里是且关系)

  • event-id是邮件事件类型,这个类型选择RECEIVE表示邮件由传输服务的 SMTP 接收组件接收或由分拣或重播目录发送(源:SMTP),或邮件已从邮箱提交至邮箱传输提交服务(源:STOREDRIVER)

  • message-id:邮件头中 Message-Id: 头字段的值。如果 Message-Id: 头字段不存在或为空,则 Exchange 为其分配一个任意值。该值在邮件生存期内是常量。对于在 Exchange 中创建的邮件,该值的格式为 <GUID@ServerFQDN>,包括尖括号 (< >)。例如,<4867a3d78a50438bad95c0f6d072fca5@mailbox01.contoso.com>。其他邮件系统可能使用不同的语法或值;

  • sender-address:Sender: 头字段中指定的电子邮件地址,如果 Sender: 字段不存在,则为 From: 头字段中指定的电子邮件地址;

clip_image045

接下来再创建一个外部用户对内发送邮件总数(如果您的单位Exchange绑定了多个邮件域名,那么sender-address这里是且关系)

  • event-id是邮件事件类型,这个类型选择RECEIVE表示邮件由传输服务的 SMTP 接收组件接收或由分拣或重播目录发送(源:SMTP),或邮件已从邮箱提交至邮箱传输提交服务(源:STOREDRIVER)

  • message-id:邮件头中 Message-Id: 头字段的值。如果 Message-Id: 头字段不存在或为空,则 Exchange 为其分配一个任意值。该值在邮件生存期内是常量。对于在 Exchange 中创建的邮件,该值的格式为 <GUID@ServerFQDN>,包括尖括号 (< >)。例如,<4867a3d78a50438bad95c0f6d072fca5@mailbox01.contoso.com>。其他邮件系统可能使用不同的语法或值;

  • sender-address:Sender: 头字段中指定的电子邮件地址,如果 Sender: 字段不存在,则为 From: 头字段中指定的电子邮件地址;

clip_image046

那么这个页面要暂时的都基本OK了,接下来我进行下美化和排版

clip_image047

按照这样的方法再创建其他页,例如发送和接受统计

clip_image048

按月统计

clip_image049

查询功能,可以看到自己输入查询关键字来对日志进行检索查询到您想看到的信息

clip_image050

比如我输入一个收件人地址,那么改收件人的所有主题和发送给谁的查询结果就显示在下面了,非常简单

clip_image051

这样定制化的Exchange信息检索统计分析是不是很有用并且可以自己想怎么定制就怎么定制,神器啊~关键是只需要拿到跟踪日志即可分析。