Berichtsserver-Ausführungsprotokoll und die Sicht "ExecutionLog3"
Das Berichtsserver-Ausführungsprotokoll enthält Informationen zu den Berichten, die auf dem Server bzw. auf mehreren Servern in einer Bereitstellung für horizontales Skalieren ausgeführt werden. Anhand des Berichtsserver-Ausführungsprotokolls können Sie feststellen, wie oft ein Bericht angefordert wird, welche Formate am meisten verwendet werden und wie viele Millisekunden Verarbeitungszeit für die einzelnen Verarbeitungsphasen aufgewendet werden. Das Protokoll enthält Informationen über die zum Ausführen der Datasetabfrage eines Berichts aufgewendete Zeit und die zum Verarbeiten der Daten aufgewendete Zeit. Als Berichtsserveradministrator können Sie die Protokollinformationen überprüfen, Aufgaben mit langer Ausführungsdauer identifizieren und den Berichtsautoren Vorschläge zu den Bereichen des Berichts (Dataset oder Verarbeitung) unterbreiten, die sie eventuell verbessern können.
Für den SharePoint-Modus konfigurierte Berichtsserver können die SharePoint-ULS-Protokolle nutzen. Weitere Informationen finden Sie unter Vorgehensweise: Aktivieren von Reporting Services-Ereignissen für das SharePoint-Ablaufverfolgungsprotokoll (ULS).
Anzeigen von Protokollinformationen
Der Berichtsserver protokolliert Daten zur Berichtsausführung in einer internen Datenbanktabelle. Die Informationen aus der Tabelle sind über SQL-Sichten verfügbar.
Das Berichtsausführungsprotokoll wird in der Berichtsserver-Datenbank gespeichert, deren Standardname ReportServer lautet. Die folgenden SQL-Sichten bieten die Ausführungsprotokollinformationen. Die Sichten "2" und "3" wurden in neueren Versionen hinzugefügt. Sie enthalten neue Felder oder Felder mit benutzerfreundlicheren Namen als in den früheren Versionen. Die älteren Sichten bleiben im Produkt enthalten, damit benutzerdefinierte Anwendungen, die von ihnen abhängen, nicht beeinträchtigt werden. Wenn eine Abhängigkeit von einer älteren Sicht, z. B. "ExecutionLog", vorhanden ist, wird empfohlen, die neueste Sicht "ExecutionLog3" zu verwenden.
Konfigurationseinstellungen für das Berichtsserver-Ausführungsprotokoll
Sie können die Protokollierung für die Berichtsausführung auf der Seite "Servereigenschaften" in SQL Server Management Studio aktivieren oder deaktivieren.
Standardmäßig werden Protokolleinträge 60 Tage gespeichert. Einträge, die diese Dauer überschreiten, werden täglich um 2:00 Uhr entfernt. Für eine länger vorhandene Installation stehen Informationen jeweils nur 60 Tage lang zur Verfügung.
ExecutionLog3
Feld "AdditionalInfo"
ExecutionLog2
ExecutionLog
Sie können keine Beschränkungen für die Anzahl der Zeilen oder die Art der protokollierten Einträge festlegen. Sie können jedoch Berichte erstellen, die die Protokollinformationen abrufen, die Sie verfolgen möchten.
Protokollfelder ("ExecutionLog3")
In dieser Sicht wurden einige neue Felder, einschließlich "AdditionalInfo", hinzugefügt, mit einer XML-Struktur von 1:n zusätzlichen Informationsfeldern. In der folgenden Transact SQL-Beispielanweisung werden Zeilen aus der Sicht "ExecutionLog3" abgerufen. Im Beispiel wird als Name der Berichtsserver-Datenbank ReportServer angenommen:
Use ReportServer
select * from ExecutionLog3 order by TimeStart DESC
Die Daten, die im Berichtsausführungsprotokoll aufgezeichnet werden, sind in der folgenden Tabelle beschrieben.
Spalte |
Beschreibung |
---|---|
InstanceName |
Name der Berichtsserverinstanz, die die Anforderung verarbeitet hat. Wenn die Umgebung mehrere Berichtsserver enthält, können Sie die InstanceName-Verteilung analysieren, um den Netzwerklastenausgleich zu überwachen und zu bestimmen, ob Anforderungen wie erwartet auf Berichtsserver verteilt werden. |
ItemPath |
Der Pfad, unter dem ein Bericht oder Berichtselement gespeichert wird. |
UserName |
Benutzer-ID. |
ExecutionID |
|
RequestType |
Mögliche Werte:
Durch die Analyse von nach RequestType=Subscription gefilterten und nach TimeStart sortierten Protokolldaten wird möglicherweise eine hohe Abonnementnutzung erkannt, und eventuell empfiehlt es sich, einige Berichtsabonnements auf einen anderen Zeitpunkt festzulegen. |
Format |
Renderingformat. |
Parameter |
Parameterwerte, die für die Berichtsausführung verwendet werden. |
ItemAction |
Mögliche Werte:
|
TimeStart |
Anfangs- und Beendigungszeit für die Verarbeitung eines Berichts. |
TimeEnd |
|
TimeDataRetrieval |
Zeitaufwand (in Millisekunden) für das Abfragen der Daten, das Verarbeiten des Berichts und das Rendern des Berichts. |
TimeProcessing |
|
TimeRendering |
|
Quelle |
Quelle der Berichtsausführung (1=Live, 2=Cache, 3=Momentaufnahme, 4=Verlauf). |
Status |
Status (entweder rsSuccess oder ein Fehlercode; beim Auftreten mehrerer Fehler wird nur der erste Fehler aufgezeichnet). |
ByteCount |
Größe von gerenderten Berichten in Bytes. |
RowCount |
Anzahl der von Abfragen zurückgegebenen Zeilen. |
AdditionalInfo |
Ein XML-Eigenschaftenbehälter mit zusätzlichen Informationen über die Ausführung. Der Inhalt kann für jede Zeile unterschiedlich sein. |
Zum Anfang
AdditionalInfo
Es folgt ein Beispiel:
<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>
Die folgende Tabelle beschreibt einige der Werte in der AdditionalInfo-Tabelle:
Eigenschaft |
Hinweise |
---|---|
ProcessingEngine |
1=SQL Server 2005, 2=das neue bedarfsgesteuerte Verarbeitungsmodul. Wenn der Großteil der Berichte noch den Wert 1 aufweist, können Sie untersuchen, wie Sie ihren Entwurf ändern können, damit sie das neuere und effizientere bedarfsgesteuerte Verarbeitungsmodul nutzen. |
ScalabilityTime |
Die Anzahl der zum Ausführen von Skalierungsvorgängen im Verarbeitungsmodul aufgewendeten Millisekunden. Der Wert 0 gibt an, dass für Skalierungsvorgänge keine zusätzliche Zeit aufgewendet wurde, und 0 gibt außerdem an, dass ausreichend Arbeitsspeicher für die Anforderung vorhanden war. |
EstimatedMemoryUsageKB |
Eine Schätzung der von jeder Komponente während einer bestimmten Anforderung verbrauchten Spitzenmenge an Arbeitsspeicher. |
DataExtension |
Die Typen der im Bericht verwendeten Datenerweiterungen oder Datenquellen. Die Zahl ist die Anzahl der Vorkommen der jeweiligen Datenquelle. |
Zum Anfang
Protokollfelder ("ExecutionLog2")
In dieser Sicht wurden einige neue Felder, einschließlich AdditionalInfo, hinzugefügt, mit einer XML-Struktur von 1:n zusätzlichen Informationsfeldern. In der folgenden Transact SQL-Beispielanweisung werden Zeilen aus der Sicht "ExecutionLog2" abgerufen. Im Beispiel wird als Name der Berichtsserver-Datenbank ReportServer angenommen:
Use ReportServer
select * from ExecutionLog2 order by TimeStart DESC
Die Daten, die im Berichtsausführungsprotokoll aufgezeichnet werden, sind in der folgenden Tabelle beschrieben.
Spalte |
Beschreibung |
---|---|
InstanceName |
Name der Berichtsserverinstanz, die die Anforderung verarbeitet hat. |
ReportPath |
Die Pfadstruktur des Berichts. Beispielsweise lautet für einen Bericht mit den Namen "test" im Stammordner des Berichts-Managers der ReportPath "/test". Für einen Bericht mit dem Namen "test", der im Berichts-Manager im Ordner "samples" gespeichert wird, lautet der ReportPath "/Samples/test/". |
UserName |
Benutzer-ID. |
ExecutionID |
|
RequestType |
Anforderungstyp (Benutzer oder System). |
Format |
Renderingformat. |
Parameter |
Parameterwerte, die für die Berichtsausführung verwendet werden. |
ReportAction |
Mögliche Werte: Render, Sort, BookMarkNavigation, DocumentNavigation, GetDocumentMap, Findstring |
TimeStart |
Anfangs- und Beendigungszeit für die Verarbeitung eines Berichts. |
TimeEnd |
|
TimeDataRetrieval |
Zeitaufwand (in Millisekunden) für das Abfragen der Daten, das Verarbeiten des Berichts und das Rendern des Berichts. |
TimeProcessing |
|
TimeRendering |
|
Quelle |
Quelle der Berichtsausführung (1=Live, 2=Cache, 3=Momentaufnahme, 4=Verlauf). |
Status |
Status (entweder rsSuccess oder ein Fehlercode; beim Auftreten mehrerer Fehler wird nur der erste Fehler aufgezeichnet). |
ByteCount |
Größe von gerenderten Berichten in Bytes. |
RowCount |
Anzahl der von Abfragen zurückgegebenen Zeilen. |
AdditionalInfo |
Ein XML-Eigenschaftenbehälter mit zusätzlichen Informationen über die Ausführung. |
Zum Anfang
Protokollfelder (ExecutionLog)
In der folgenden Transact SQL-Beispielanweisung werden Zeilen aus der Sicht "ExecutionLog" abgerufen. Im Beispiel wird als Name der Berichtsserver-Datenbank ReportServer angenommen:
Use ReportServer
select * from ExecutionLog order by TimeStart DESC
Die Daten, die im Berichtsausführungsprotokoll aufgezeichnet werden, sind in der folgenden Tabelle beschrieben.
Spalte |
Beschreibung |
---|---|
InstanceName |
Name der Berichtsserverinstanz, die die Anforderung verarbeitet hat. |
ReportID |
Berichts-ID. |
UserName |
Benutzer-ID. |
RequestType |
Mögliche Werte: True = eine Abonnementanforderung False= eine interaktive Anforderung |
Format |
Renderingformat. |
Parameter |
Parameterwerte, die für die Berichtsausführung verwendet werden. |
TimeStart |
Anfangs- und Beendigungszeit für die Verarbeitung eines Berichts. |
TimeEnd |
|
TimeDataRetrieval |
Zeitaufwand (in Millisekunden) für das Abfragen der Daten, das Verarbeiten des Berichts und das Rendern des Berichts. |
TimeProcessing |
|
TimeRendering |
|
Quelle |
Die Quelle der Berichtsausführung. Mögliche Werte: (1=Live, 2=Cache, 3=Momentaufnahme, 4=Verlauf, 5=Ad-hoc, 6=Sitzung, 7=RDCE). |
Status |
Mögliche Werte: rsSuccess, rsProcessingAborted oder ein Fehlercode. Wenn mehrere Fehler auftreten, wird nur der erste Fehler aufgezeichnet. |
ByteCount |
Größe von gerenderten Berichten in Bytes. |
RowCount |
Anzahl der von Abfragen zurückgegebenen Zeilen. |
Zum Anfang
Siehe auch
Konzepte
Änderungsverlauf
Änderungsverlauf:
Datum |
Änderung |
September 2011 |
Informationen über die zwei neueren Sichten und einfache Syntax zum Abrufen von Zeilen aus Sichten hinzugefügt. |