報表服務器中有強大的日志的功能,日志中記錄了查詢過的報表的一些信息(包含記錄數(shù)、運行時間、報表的參數(shù)等),通過開始日期和結束日期的運算,可以知道哪個報表最慢,查詢如下:
SELECT top 100 max(DATEDIFF(second,TimeStart,Timeend)) ,q.c_NAME
FROM ReportServer..Catalog c,ReportServer..ExecutionLog e,shq_srv.enjoy_shq.dbo.tbc_rpt_format q
WHERE TimeStart>'2013-5-17' and itemid=e.reportid AND q.c_guid=name
group by q.c_NAME order by max(DATEDIFF(second,TimeStart,Timeend)) desc
取到最慢報表的top100