報表伺服器服務追蹤記錄
Reporting Services 報表伺服器追蹤記錄是 ASCII 文字檔,其中包含了報表伺服器服務作業的詳細資訊。 檔案中的資訊包括報表伺服器 Web 服務、Web 入口網站及背景處理執行的作業。 追蹤記錄檔包括已記錄於其他記錄檔的重複資訊,加上別處所沒有的其他資訊。 如果您要偵錯包含報表伺服器的應用程式,追蹤記錄資訊會很有用。 如果您要調查寫入事件記錄檔或執行記錄的特定問題,這項資訊也會很有用。 例如,疑難排解訂閱問題時。
報表伺服器記錄檔在何處?
追蹤記錄檔為 ReportServerService_<timestamp>.log
和 Microsoft.ReportingServices.Portal.WebHost_<timestamp>.log
,位於下列資料夾:
C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\LogFiles
系統每天都會建立追蹤記錄,從午夜過後 (當地時間) 發生的第一個項目,以及每次服務重新啟動時開始。 此時間戳記是以國際標準時間 (UTC) 為基礎。 此檔案採用 EN-US 格式。 追蹤記錄檔的預設大小上限為 32 MB,且預設會在 14 天後刪除。
追蹤組態設定
追蹤記錄行為是在設定檔 ReportingServicesService.exe.config
中管理。 設定檔位於下列資料夾路徑中:
\Program Files\Microsoft SQL Server\MSRS13.<instance name>\Reporting Services\ReportServer\bin
.
下列範例說明 RStrace 設定的 XML 結構。 DefaultTraceSwitch 的值會決定要將哪種資訊新增到記錄。 除了 Components 屬性外, RStrace 的值在所有組態檔中都相同。
\<system.diagnostics>
<switches>
<add name="DefaultTraceSwitch" value="3" />
</switches>
\</system.diagnostics>
<RStrace>
<add name="FileName" value="ReportServerService_" />
<add name="FileSizeLimitMb" value="32" />
<add name="KeepFilesForDays" value="14" />
<add name="Prefix" value="appdomain, tid, time" />
<add name="TraceListeners" value="file" />
<add name="TraceFileMode" value="unique" />
<add name="Components" value="all:3" />
</RStrace>
下表提供有關各項設定的資訊。
設定 | 描述 | 值 |
---|---|---|
RStrace | 指定用於錯誤和追蹤的命名空間。 | |
DefaultTraceSwitch | 指定報告到 ReportServerService 追蹤記錄的資訊層級。 每一個層級包括所有較低層級所報告的資訊。 不建議停用追蹤。 |
有效值為: 0= 停用追蹤。 預設啟用 ReportServerService 記錄檔。 若要關閉,請將追蹤層級設定為 0 。1= Exceptions and restarts 2= Exceptions, restarts, warnings 3= Exceptions, restarts, warnings, status messages (預設值)4= Verbose mode |
FileName | 指定記錄檔名稱的第一部分。 Prefix 所指定的值會完成名稱的其餘部分。 | |
FileSizeLimitMb | 指定追蹤記錄的大小上限。 檔案大小的單位為 MB。 藉由設定追蹤層級 (0 到 4) 來控制記錄的內容多寡,便可以控制檔案大小。 您也可以指定要追蹤的元件。 若記錄檔未達 14 天的到期期限即已達到上限,較新的項目將會取代較舊的項目。 |
有效值為 0 到最大整數。 預設值為 32。 如果指定 0 或負數,報表伺服器會將該值視為 1。 |
KeepFilesForDays | 指定一個天數,超過此天數後,追蹤記錄檔便會被刪除。 | 有效值為 0 到最大整數。 預設值為 14。 如果指定 0 或負數,報表伺服器會將該值視為 1。 |
Prefix | 指定所產生可區分不同記錄檔執行個體的值。 | 依預設,會將時間戳記附加至追蹤記錄檔名稱。 此值會設定為 appdomain, tid, time 。 請勿修改此設定。 |
TraceListeners | 指定輸出追蹤記錄內容的目標。 您可以指定多重目標,每個目標之間請以逗號隔開。 | 有效值為:DebugWindow File (預設值)StdOut |
TraceFileMode | 指定追蹤記錄中是否要包含 24 小時內的資料。 每個元件每一天只能有一份追蹤記錄。 | 此值會設定為 Unique (default) 。 請勿修改此值。 |
元件類別 | 使用下列格式來指定要產生追蹤記錄資訊的元件以及追蹤層級:\<component category>:\<tracelevel> 您可以指定全部或部分元件 (all、 RunningJobs、 SemanticQueryEngine、 SemanticModelGenerator)。 如果不要產生特定元件的資訊,可以停用該元件的追蹤 (例如 "SemanticModelGenerator:0")。 請不要停用 all 的追蹤。 如果要檢視為每個語意查詢產生的 Transact-SQL 陳述式,您可以設定 "SemanticQueryEngine:4"。 Transact-SQL 陳述式就會記錄在追蹤記錄中。 下列範例說明將 Transact-SQL 陳述式加入記錄的組態設定: <add name="Components" value="all,SemanticQueryEngine:4" /> |
元件類別可設定為: All 用於針對所有不屬於特定類別的程序,追蹤其一般報表伺服器活動。 RunningJobs 用於追蹤進行中報表或訂閱作業。 SemanticQueryEngine 用於追蹤語意查詢,語意查詢會在使用者對以模型為基礎的報表執行非計劃性資料瀏覽時處理。 SemanticModelGenerator 用於追蹤模型產生。 http 是用於啟用報表伺服器 HTTP 記錄檔。 如需詳細資訊,請參閱< Report Server HTTP Log>。 |
元件類別的 tracelevel 值 | <元件類別>:<追蹤層級> 如果您沒有將追蹤層級附加至元件,就會使用針對 DefaultTraceSwitch 所指定的值。 例如,如果您指定 all,RunningJobs,SemanticQueryEngine,SemanticModelGenerator ,則所有元件都會使用預設追蹤層級。 |
追蹤層級的有效值包括:0= Disables tracing 1= Exceptions and restarts 2= Exceptions, restarts, warnings 3= Exceptions, restarts, warnings, status messages (預設值)4= Verbose mode 報表伺服器的預設值是: all:3 。 |
新增自訂組態設定來指定傾印檔位置
您可以新增自訂設定,來設定 Windows 的 Dr. Watson for Windows 工具用於儲存傾印檔案。 自訂設定為 Directory。 下列範例說明如何在 RStrace
區段中指定這個組態設定:
<add name="Directory" value="U:\logs\" />
如需詳細資訊,請參閱 Microsoft 網站上的知識庫文章 913046。
記錄檔欄位
您可以在追蹤記錄中找到下列欄位:
系統資訊,包括作業系統、版本、處理器數量及記憶體。
Reporting Services 元件和版本資訊。
應用程式記錄檔的事件記錄。
報表伺服器所產生的例外狀況。
報表伺服器所記錄的低資源警示。
輸入 SOAP Envelope 和摘要輸出 SOAP Envelope。
HTTP 標頭、堆疊追蹤和偵錯追蹤資訊。
您可以檢閱追蹤記錄資訊,以便判斷是否發生報表傳遞、誰接收到報表以及嘗試傳遞了幾次。 追蹤記錄也會記錄報表執行活動,以及報表處理期間有作用的環境變數。 錯誤和例外狀況也會輸入到追蹤記錄中。 例如,您可能會發現報表逾時錯誤 (指定為 ThreadAbortExceptions
項目)。
舊版
舊版的 Reporting Services 中有多個追蹤記錄檔,每個應用程式各有一個。 下列檔案已淘汰,且在 SQL Server 2008 (10.0.x) 和後續版本中不會再建立:
+ ReportServerWebApp_\<timestamp>.log
+ ReportServer_\<timestamp>.log
+ ReportServerService_main_\<timestamp>.log