PBIRS: 实现SSIS作业实时监控

本文将会分享一个我在过去做的一个ETL作业实时监控的报表项目,它利用Power BI Report Server (PBIRS) 直连 SQL Server 中的 SSIS数据库,实现对SSIS作业流的监控与管理。下文分享了项目的大体流程和现成代码。

效果预览

此处提供一个脱敏截图,仅供参考。

PBIRS: 实现SSIS作业实时监控_第1张图片
你可以在此报表查询到最近所有的SSIS包任务的执行情况(你可以在SSMS修改SSIS数据库的历史数据记录范围),包括SSIS项目根目录,连接字符串,执行时间等等,你还可以像上图一样筛选出当日所有报错的任务,在左侧选择对应的包任务,右侧就可以展示该包的执行过程,这方便ETL开发者迅速找到报错的步骤以及原因,同时也便于开发者进行项目的调优。

实现方式

实现的过程并不复杂,关键是需要弄清楚SSIS数据库的字段逻辑。经过我此前的整理,在此整理出四段SQL查询,它们分别对应Power BI内不同的表。

1. Executions

主表,记录了所有包任务的执行情况。

SELECT  A0.[execution_id]
      ,[folder_name]
      ,[project_name]
      ,[package_name]
	  ,CONVERT(VARCHAR(12),A1.[start_time],114) AS [Start Time]
	  ,CONVERT(VARCHAR(12),A1.[end_time],114) as [End 

你可能感兴趣的:(PowerBI,SQL,Server)