从 SQL 查询监视 Power BI 刷新

问题描述

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

有没有办法使用 T-SQL 将名称 GUID 解析为 Power BI 报告?类似的东西:

 updateUserMarker: (marker,markerIndex) => {
      console.log('marker,markerIndex ',marker,markerIndex);

      let updatedMarker = user.markers.map(element =>
        element.id == markerIndex ? { ...element,...marker } : element
      )[0];

      console.log(
        'user.markers[markerIndex] updatedMarker ',user.markers[markerIndex],updatedMarker
      );
      setUser({
        ...user,markers: [
          {
            ...user.markers[markerIndex],...(user.markers[markerIndex] = updatedMarker)
          }
        ]
      });
    },

解决方法

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

在 ReportServer 数据库中,ExecutionLogStorage 表包含我正在寻找的数据,以便将计划的刷新与目录表联系起来。那里有一个字段叫做请求类型。 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()) 

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...