为什么 ssrs 报告订阅处于待定状态并且交付很晚
Why ssrs report subscriptions are Pending and deliver very late
我对 SSRS 报告订阅完全陌生,我有 700 多个 SSRS 报告订阅。直到上个月所有订阅都在工作,现在订阅将处于 "Pending" 状态,2~3 小时后所有订阅将执行并交付给用户。
我尝试了以下方法,但 none 这些方法有所帮助。
- 我已在 "SQL Server Agent" 中手动重新启动订阅。
- 在我的电子邮件 ID 上创建了一个新订阅,但即使是新订阅也将处于待定状态,并且在 2~3 小时后它将触发。
- 从服务重新启动 "SQL Server Reporting Service"。
- 重新启动了托管此订阅的服务器。
- 有人建议查看订阅table中"ExtensionSettings"栏的&字符,但是没有&字符。
下面的查询我已经试过了,但什么也得不到。
SELECT s.[SubscriptionID] -- 订阅ID
,s.[OwnerID] -- 报告所有者
,s.[Report_OID] -- 报告 ID
, c.Path -- 报告路径
,rs.ScheduleID as SQLJobName -- SQL 服务器上的作业名称
,s.[Description] -- 报表订阅说明
,s.[LastStatus] -- 上次订阅执行的状态。
,s.[EventType] -- 订阅类型
,s.[LastRunTime] -- 上次执行订阅的时间
,s.[Parameters] -- 用于订阅的参数
,s.[DeliveryExtension] -- 如何交付订阅
FROM [ReportServer].[dbo].[订阅] 作为 s
left join dbo.Catalog as c on c.ItemID = s.Report_OID
左加入 dbo.ReportSchedule 作为 rs on rs.ReportID = s.Report_OID
按 c.Path
排序
SELECT 前 10 名 * 来自 dbo.ExecutionLog WHERE CAST(TimeStart AS DATE)
BETWEEN '21/10/2019' AND '21/10/2019' ORDER BY TimeStart DESC
Select * 从 dbo.ExecutionLog2 WHERE CAST(TimeStart AS DATE) BETWEEN
'7/1/2014' 和 '7/2/2014' 按 TimeStart DESC
排序
SELECT 前 5000 名 * FROM dbo.ExecutionLog3 其中 Status <> 'rsSuccess' 和
CAST (timestart as date) =cast('2019-10-24 10:00:29.120' as date) ORDER BY
时间开始 DESC
导致订阅处于挂起状态和延迟的可能原因是什么?如何解决这个问题?
提前致谢!
经过深入分析,我自己找到了答案。为了解决这个问题,我遵循了两个步骤。
第 1 步:我有 removed/cleared 所有返回错误的订阅,如 "library!WindowsService_0!152c!09/09/2010-13:47:42:: e ERROR:"。
第 2 步:"DatabaseQueryTimeout" - 增加限制(默认为 120)
我对 SSRS 报告订阅完全陌生,我有 700 多个 SSRS 报告订阅。直到上个月所有订阅都在工作,现在订阅将处于 "Pending" 状态,2~3 小时后所有订阅将执行并交付给用户。
我尝试了以下方法,但 none 这些方法有所帮助。
- 我已在 "SQL Server Agent" 中手动重新启动订阅。
- 在我的电子邮件 ID 上创建了一个新订阅,但即使是新订阅也将处于待定状态,并且在 2~3 小时后它将触发。
- 从服务重新启动 "SQL Server Reporting Service"。
- 重新启动了托管此订阅的服务器。
- 有人建议查看订阅table中"ExtensionSettings"栏的&字符,但是没有&字符。
下面的查询我已经试过了,但什么也得不到。
SELECT s.[SubscriptionID] -- 订阅ID ,s.[OwnerID] -- 报告所有者 ,s.[Report_OID] -- 报告 ID , c.Path -- 报告路径 ,rs.ScheduleID as SQLJobName -- SQL 服务器上的作业名称 ,s.[Description] -- 报表订阅说明 ,s.[LastStatus] -- 上次订阅执行的状态。 ,s.[EventType] -- 订阅类型 ,s.[LastRunTime] -- 上次执行订阅的时间 ,s.[Parameters] -- 用于订阅的参数 ,s.[DeliveryExtension] -- 如何交付订阅 FROM [ReportServer].[dbo].[订阅] 作为 s left join dbo.Catalog as c on c.ItemID = s.Report_OID 左加入 dbo.ReportSchedule 作为 rs on rs.ReportID = s.Report_OID 按 c.Path
排序SELECT 前 10 名 * 来自 dbo.ExecutionLog WHERE CAST(TimeStart AS DATE) BETWEEN '21/10/2019' AND '21/10/2019' ORDER BY TimeStart DESC
Select * 从 dbo.ExecutionLog2 WHERE CAST(TimeStart AS DATE) BETWEEN '7/1/2014' 和 '7/2/2014' 按 TimeStart DESC
排序SELECT 前 5000 名 * FROM dbo.ExecutionLog3 其中 Status <> 'rsSuccess' 和 CAST (timestart as date) =cast('2019-10-24 10:00:29.120' as date) ORDER BY 时间开始 DESC
导致订阅处于挂起状态和延迟的可能原因是什么?如何解决这个问题?
提前致谢!
经过深入分析,我自己找到了答案。为了解决这个问题,我遵循了两个步骤。 第 1 步:我有 removed/cleared 所有返回错误的订阅,如 "library!WindowsService_0!152c!09/09/2010-13:47:42:: e ERROR:"。 第 2 步:"DatabaseQueryTimeout" - 增加限制(默认为 120)