我这里有一个微软的私有云环境,Windows Server 2012 R2构建了底层的虚拟化平台,管理层是用的System Center 2012 R2,因为PowerBI可以做更高级的BI展现,因此在这里我将利用这个私有云环境,用PowerBI访问SCOM的SQL数据库来创建一个KPI的报表展现:

要实现这个KPI报表展现分为4步:

  • 从SQL中收集需要查询的数据

  • 采用PowerBI Desktop来完成提取需要的数据(数据清洗)

  • 采用PowerBI Desktop来创建报告

  • 利用PowerBI DeskTop创建出来的报告来实现和我的交互

接下来进行第一步,PowerBI Desktop连接SCOM的SQL数据库进行所需数据的收集

打开PowerBI Desktop获取SQL数据

clip_image001  

配置连接SQL数据库的参数

select vme2.ManagedEntityRowId,vme2.DisplayName as ComputerName,(case when pr.objectname = 'LogicalDisk' then vme2.displayname + ':' + pri.instancename else vme2.DisplayName end) as ChartName,vme.DisplayName as ClassName,vr.RuleDefaultName, pr.ObjectName,pr.CounterName,pri.InstanceName, vpd.DateTime,vpd.SampleCount,vpd.AverageValue,vpd.MinValue,vpd.MaxValue,vpd.StandardDeviation from vPerformanceRule pr

join vPerformanceRuleInstance pri on pri.rulerowId=pr.RuleRowId

join vRule vr on vr.RuleRowId=pr.RuleRowId

join Perf.vPerfHourly vpd on vpd.PerformanceRuleInstanceRowId=pri.PerformanceRuleInstanceRowId

join vManagedEntity vme on vme.ManagedEntityRowId=vpd.ManagedEntityRowId

join vManagedEntity vme2 on vme2.ManagedEntityRowId=vme.TopLevelHostManagedEntityRowId

where vpd.DateTime > DATEADD(dd,-7,GETUTCDATE())

and (pr.ObjectName in ('Processor','Processor Information','Memory','LogicalDisk') or pr.ObjectName like '%SQL%')

order by vpd.datetime asc

clip_image002

可以看到数据提取出来的预览状态,点击加载

clip_image003  

加载完成后,我们也可以编辑查询,定义每一个数据集的友好名称以及连接源数据的方式,然后关闭

clip_image004  

接下来创建报表展现

点击一个可视化的条形图

clip_image005  

以拖拽的方式,在条形图属性中放入对应的项名称,这样就可以显示出我私有云环境中所有系统的性能平均值

clip_image006  

接下来我将设置2种筛选器来显示我想看到的数据:

  • 视觉级筛选器:仅适用于高亮显示当前可视化视图,在当前情况下只适用于“条形图”

  • 页面级筛选器:将过滤整个报表数据,如果有4个条形图,筛选器将联动影响每一个条形图

接下来我将再添加几个筛选器,如下图:

clip_image007  

添加好筛选器以后,选择2个项目来筛选查看,一个是平均磁盘传输时间,一个是逻辑磁盘,构成的关系就是逻辑磁盘且平均磁盘传输时间为筛选条件

clip_image008  

接下来对该可视化视图进行一个标题命名:逻辑磁盘平均传输时间

clip_image009  

按照上面的方法我再添加额外的三个条形图,快捷的方法可以选择现在的这个条形图进行复制粘贴,然后参照上面的方法配置每一个可视化视图的筛选器

例如:CPU

clip_image010  

例如:内存

clip_image011  

例如:逻辑磁盘平均等待连接队列数

clip_image012  

接下来如果想进行数据的排序,那么点击其中一个可视化视图点击"…”选择排序规则

clip_image013  

如果想看到更新的数据,那么只需要点击刷新,PowerBI会自动的连接到SCOM的SQL里获取最新的数据进行展现,非常的方便

clip_image014  

如果想以时间为基准,查看所有CPU,内存,逻辑磁盘的各项指标,那么可以点击DateTime选择具体的时间,所有的可视化视图也会随之联动一起变化,非常漂亮

clip_image015  

也可以选择高级筛选,指定一个具体的时间范围

clip_image016  

除此之外还有一种做法就是添加一个可视化视图:时间切片器。让我可以拉动时间范围来查看想要的数据,调整这个时间范围,那么其他所有可视化视图的数据将会联动动态变化  

clip_image017  

同理再添加一个计算机名的切片器,这样可以自己勾选想看哪几台系统的性能指标,勾选(单选)即可获得其他可视化视图的联动动态变化报表数据展现

clip_image018  

如果要多选可以直接在筛选器里勾选

clip_image019  

当然每一个可视化视图是可以自己去定义很多配置和参数的,例如颜色,字体等等

clip_image020