報表伺服器執行記錄和 ExecutionLog3 檢視

報表伺服器執行記錄包含有關在伺服器上執行,或在向外延展部署中多個伺服器上執行之報表的資訊。您可以使用報表執行記錄來了解要求報表的頻率、最常使用的格式,以及每一個處理階段所花費處理時間的毫秒數。此記錄包含有關執行報表資料集查詢所花費的時間長度以及處理資料所花費的時間長度等資訊。如果您是報表伺服器管理員,就可以檢閱記錄資訊、識別長時間執行的工作並且向報表作者建議他們可以改善的報表區域 (資料集或處理)。

設定為 SharePoint 模式的報表伺服器可以運用 SharePoint ULS 記錄。如需詳細資訊,請參閱<如何:開啟 SharePoint 追蹤記錄的 Reporting Services 事件 (ULS)>。

檢視記錄資訊

報表伺服器會將有關報表執行的資料記錄到內部資料庫資料表中。您可以從 SQL 檢視取得此資料表中的資訊。

報表執行記錄會儲存在預設名為 ReportServer 的報表伺服器資料庫中。下列 SQL 檢視會提供執行記錄資訊。“2” 和 “3” 檢視是在最近的版本中加入,而且包含新欄位或者包含名稱比舊版更易記的欄位。舊版檢視會保留在產品中,因此相依於這些檢視的自訂應用程式不受影響。如果您沒有舊版檢視 (例如 ExecutionLog) 的相依性,建議您使用最新的檢視:ExecutionLog3

報表伺服器執行記錄的組態設定

您可以從 SQL Server Management Studio 的 [伺服器屬性] 頁面開啟或關閉報表執行記錄。

根據預設,記錄項目會保留 60 天。超過此天數的項目會在每天上午 2:00 移除。在到期的安裝上,不論何時都只能取得 60 天的資訊。

  • ExecutionLog3

  • AdditionalInfo 欄位

  • ExecutionLog2

  • ExecutionLog

您無法針對資料列數目或記錄的項目類型設定限制。不過,您可以建立報表,以便擷取想要追蹤的記錄資訊。

記錄欄位 (ExecutionLog3)

這個檢視加入了一些新欄位,包括 AdditionalInfo,其中包含一對多額外資訊欄位的 XML 結構。下面是可從 ExecutionLog3 檢視擷取資料列的範例 Transact SQL 陳述式。此範例會假設報表伺服器資料庫名為 ReportServer

Use ReportServer
select * from ExecutionLog3 order by TimeStart DESC

下表描述在報表執行記錄中擷取的資料

資料行

說明

InstanceName

處理要求的報表伺服器執行個體名稱。如果您的環境具有多個報表伺服器,您可以分析 InstanceName 散發以監視並判斷網路負載平衡器是否依照預期方式,在報表伺服器之間散發要求。

ItemPath

報表或報表項目的儲存路徑。

UserName

使用者識別碼。

ExecutionID

RequestType

可能的值如下:

  • 互動式

  • 訂閱

分析依照 RequestType=Subscription 所篩選並且依照 TimeStart 所排序的記錄資料可以顯示訂閱使用量過高的週期,而且您可能會想要將某些報表訂閱修改成不同的時間。

Format

轉譯格式。

參數

報表執行所使用的參數值。

ItemAction

可能的值如下:

  • Render

  • 排序

  • BookMarkNavigation

  • DocumentNavigation

  • GetDocumentMap

  • Findstring

  • Execute

TimeStart

指出報表處理持續期間的開始與結束時間。

TimeEnd

TimeDataRetrieval

擷取資料、處理報表和轉譯報表所花費的毫秒數。

TimeProcessing

TimeRendering

Source

報表執行的來源 (1= 即時、2= 快取、3= 快照集、4= 記錄)。

Status

狀態 (不是 rsSuccess 就是錯誤碼;如果發生多個錯誤,就只會記錄第一個錯誤)。

ByteCount

轉譯報表的大小 (以位元組為單位)。

RowCount

從查詢傳回的資料列數目。

AdditionalInfo

包含有關執行之額外資訊的 XML 屬性包。每個資料列的內容可能都不同。

搭配回到頁首連結使用的箭頭圖示回到頁首

AdditionalInfo

以下是一個範例:

<AdditionalInfo>
  <ProcessingEngine>2</ProcessingEngine>
  <ScalabilityTime>
    <Pagination>0</Pagination>
    <Processing>0</Processing>
  </ScalabilityTime>
  <EstimatedMemoryUsageKB>
    <Pagination>4</Pagination>
    <Processing>18</Processing>
  </EstimatedMemoryUsageKB>
  <DataExtension>
    <SQL>1</SQL>
  </DataExtension>
</AdditionalInfo>

下表描述一些您會在 AdditionalInfo 資料表中看見的值:

屬性

附註

ProcessingEngine

1=SQL Server 2005,2=新的視需要處理引擎。如果您的大多數報表仍然顯示值 1,您可以調查如何重新設計報表,以便運用更新且更有效率的視需要處理引擎。

ScalabilityTime

在處理引擎中執行縮放相關作業所花費的毫秒數。值為 0 表示沒有針對縮放作業花費任何額外的時間,而且 0 也表示要求沒有記憶體不足的壓力。

EstimatedMemoryUsageKB

特定要求期間每個元件所耗用之尖峰記憶體數量的估計值 (以 KB 為單位)。

DataExtension

用於報表之資料延伸模組或資料來源的類型。此數字是特定資料來源出現次數的計數。

搭配回到頁首連結使用的箭頭圖示回到頁首

記錄欄位 (ExecutionLog2)

這個檢視加入了一些新欄位,包括 AdditionalInfo,其中包含一對多額外資訊欄位的 XML 結構。下面是可從 ExecutionLog2 檢視擷取資料列的範例 Transact SQL 陳述式。此範例會假設報表伺服器資料庫名為 ReportServer

Use ReportServer
select * from ExecutionLog2 order by TimeStart DESC

下表描述在報表執行記錄中擷取的資料

資料行

說明

InstanceName

處理要求的報表伺服器執行個體名稱。

ReportPath

報表的路徑結構。例如,如果某個報表名為 “test” 而且位於報表管理員的根資料夾中,其 ReportPath 就是 “/test”。

如果某個報表名為 “test” 而且儲存在報表管理員的 “samples” 資料夾中,其 ReportPath 就是 “/Samples/test/”

UserName

使用者識別碼。

ExecutionID

RequestType

要求類型 (使用者或系統)。

Format

轉譯格式。

參數

報表執行所使用的參數值。

ReportAction

可能的值如下:Render、Sort、BookMarkNavigation、DocumentNavigation、GetDocumentMap、Findstring

TimeStart

指出報表處理持續期間的開始與結束時間。

TimeEnd

TimeDataRetrieval

擷取資料、處理報表和轉譯報表所花費的毫秒數。

TimeProcessing

TimeRendering

Source

報表執行的來源 (1= 即時、2= 快取、3= 快照集、4= 記錄)。

Status

狀態 (不是 rsSuccess 就是錯誤碼;如果發生多個錯誤,就只會記錄第一個錯誤)。

ByteCount

轉譯報表的大小 (以位元組為單位)。

RowCount

從查詢傳回的資料列數目。

AdditionalInfo

包含有關執行之額外資訊的 XML 屬性包。

搭配回到頁首連結使用的箭頭圖示回到頁首

記錄欄位 (ExecutionLog)

下面是可從 ExecutionLog 檢視擷取資料列的範例 Transact SQL 陳述式。此範例會假設報表伺服器資料庫名為 ReportServer

Use ReportServer
select * from ExecutionLog order by TimeStart DESC

下表描述在報表執行記錄中擷取的資料

資料行

說明

InstanceName

處理要求的報表伺服器執行個體名稱。

ReportID

報表識別碼。

UserName

使用者識別碼。

RequestType

可能的值如下:

True = 訂閱要求

False = 互動式要求

Format

轉譯格式。

參數

報表執行所使用的參數值。

TimeStart

指出報表處理持續期間的開始與結束時間。

TimeEnd

TimeDataRetrieval

擷取資料、處理報表和轉譯報表所花費的毫秒數。

TimeProcessing

TimeRendering

Source

報表執行的來源。可能的值如下:(1=即時、2=快取、3=快照集、4=記錄、5=特定、6=工作階段、7=RDCE)。

Status

可能的值如下:rsSuccess、rsProcessingAborted 或錯誤碼。如果發生多個錯誤,只會記錄第一個錯誤。

ByteCount

轉譯報表的大小 (以位元組為單位)。

RowCount

從查詢傳回的資料列數目。

搭配回到頁首連結使用的箭頭圖示回到頁首

變更記錄

變更記錄:

日期

變更

2011 年 9 月

已加入兩個較新檢視的相關資訊,以及可從檢視擷取資料列的簡單語法。