繁体   English   中英

监控来自 SQL 查询的 Power BI 刷新

[英]Monitor Power BI Refreshes from SQL Query

我们有许多具有计划刷新的 Power BI 仪表板。 这些刷新是 SQL 代理作业,其名称为 GUID。 我希望能够检查失败的 SQL 代理作业,并知道哪些 Power BI 报告/仪表板刷新失败。

有没有办法使用 T-SQL 将名称 GUID 解析为 Power BI 报告? 就像是:

SELECT * 
FROM msdb.dbo.sysjobs J 
JOIN ReportServer.dbo.Catalog C 
  ON CAST(C.ItemID AS UNIQUEIDENTIFIER) = CAST(J.name AS UNIQUEIDENTIFIER) 

我想我会分享我的发现,以防其他人需要查询相同的信息:

在 ReportServer 数据库中,ExecutionLogStorage 表包含我正在寻找的数据,以便将计划刷新与 Catalog 表联系起来。 那里有一个称为请求类型的字段。 RequestType 2 是缓存刷新。

  • 0 = 交互式,
  • 1 = 订阅,
  • 2 = 缓存刷新

因此,我使用以下查询开始查看 Power BI 缓存刷新的状态:

SELECT L.TimeStart, L.TimeEnd, C.Path, L.AdditionalInfo, L.Status, 
    ROW_NUMBER() OVER (PARTITION BY C.Path ORDER BY L.TimeEnd DESC) AS rn, L.ExecutionId 
FROM ReportServer.dbo.ExecutionLogStorage L WITH(NOLOCK)
LEFT OUTER JOIN ReportServer.dbo.Catalog C WITH(NOLOCK) ON (L.ReportID = C.ItemID)
WHERE L.RequestType = 2 --cache refreshes
AND L.TimeEnd >= DATEADD(DAY,-1,GETDATE()) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM