ExecutionLog en de executionLog3-weergave gebruiken in Reporting Services
Het uitvoeringslogboek van de Reporting Services-rapportserver bevat informatie over de rapporten die worden uitgevoerd op de server of op meerdere servers. Deze servers bevinden zich in een uitschaalimplementatie in de systeemeigen modus of een SharePoint-farm. U kunt het uitvoeringslogboek van het rapport gebruiken om het volgende te ontdekken:
- Het aantal keren dat een rapport wordt aangevraagd.
- Welke uitvoerindelingen het meest worden gebruikt.
- De verwerkingstijd die is besteed aan elke verwerkingsfase in milliseconden.
Het logboek bevat informatie over de tijd die is besteed aan het uitvoeren van de gegevenssetquery van een rapport en de tijd die nodig is om de gegevens te verwerken. Als u een rapportserverbeheerder bent, kunt u de logboekgegevens controleren en langlopende taken identificeren. U kunt ook suggesties doen aan de auteurs van rapporten op de gebieden van de gegevensset of het verwerkingsrapport die ze mogelijk kunnen verbeteren.
Rapportservers die zijn geconfigureerd voor de SharePoint-modus kunnen ook gebruikmaken van de ULS-logboeken (Unified Logging Service) van SharePoint. Voor meer informatie, zie Reporting Services-gebeurtenissen inschakelen voor het SharePoint-tracelogboek (ULS).
Logboekgegevens weergeven
De rapportserver registreert gegevens over de uitvoering van rapporten in een interne databasetabel. De informatie uit de tabel is beschikbaar vanuit SQL Server-weergaven.
Het uitvoeringslogboek van het rapport wordt opgeslagen in de rapportserverdatabase die standaard ReportServer heet. De SQL-weergaven bieden informatie over het uitvoeringslogboek. De weergaven '2' en '3' zijn toegevoegd in recentere versies en bevatten nieuwe velden, of ze bevatten velden met vriendelijkere namen dan in de vorige releases. De oudere weergaven blijven aanwezig in het product, zodat aangepaste toepassingen die ervan afhankelijk zijn, niet worden beïnvloed. Als u geen afhankelijkheid hebt van een oudere weergave, bijvoorbeeld ExecutionLog, moet u de meest recente weergave gebruiken, ExecutionLog3.
Configuratie-instellingen voor een Rapportserver in de SharePoint-modus
U kunt logboekregistratie van rapportuitvoering in- of uitschakelen vanuit de systeeminstellingen van een Reporting Services-servicetoepassing.
Standaard worden logboekvermeldingen 60 dagen bewaard. Vermeldingen die deze datum overschrijden, worden elke dag om 2:00 uur verwijderd. Op een volwassen installatie is op elk gewenst moment slechts 60 dagen aan informatie beschikbaar.
U kunt geen limieten instellen voor het aantal rijen of voor het type vermeldingen dat wordt geregistreerd.
Logboekregistratie van uitvoering inschakelen voor een SharePoint-server
In SharePoint Centrale Beheer, selecteer Servicetoepassingen beheren in de groep Applicatiebeheer.
Kies de naam van de Reporting Services-servicetoepassing die u wilt configureren.
Selecteer Systeeminstellingen.
Selecteer Inschakelen uitvoeringslogins in de sectie Logboekregistratie.
Selecteer OK-.
Uitgebreide logboekregistratie inschakelen voor een SharePoint-server
U moet logboekregistratie inschakelen zoals beschreven in de vorige stappen en vervolgens de volgende stappen uitvoeren:
Zoek op de pagina Systeeminstellingen van uw Reporting Services-toepassing de sectie door de gebruiker gedefinieerde.
Wijzig de ExecutionLogLevel- in uitgebreide. Dit veld is een tekstinvoerveld en de twee mogelijke waarden zijn uitgebreide en normale.
Configuratie-instellingen voor een rapportserver in de systeemeigen modus
U kunt logboekregistratie van rapportuitvoering in- of uitschakelen vanaf de pagina Servereigenschappen in SQL Server Management Studio. De EnableExecutionLogging- is een geavanceerde eigenschap.
Standaard worden logboekvermeldingen 60 dagen bewaard. Vermeldingen die deze datum overschrijden, worden elke dag om 2:00 uur verwijderd. Op een volwassen installatie zijn op elk gewenst moment slechts 60 dagen aan informatie beschikbaar.
U kunt geen limieten instellen voor het aantal rijen of voor het type vermeldingen dat wordt geregistreerd.
Uitvoeringslogboekregistratie inschakelen voor een systeemeigen modusserver
Start SQL Server Management Studio met beheerdersbevoegdheden. Klik bijvoorbeeld met de rechtermuisknop op het management studio-pictogram en selecteer Als administrator uitvoeren.
Maak verbinding met de gewenste rapportserver.
Klik met de rechtermuisknop op de servernaam en selecteer Eigenschappen. Als de optie Eigenschappen is uitgeschakeld, controleert u of u SQL Server Management Studio hebt uitgevoerd met beheerdersbevoegdheden.
Selecteer de pagina Logboekregistratie.
Selecteer Logboekregistratie van rapportuitvoering inschakelen.
Uitgebreide logboekregistratie inschakelen voor een native modus server
U moet logboekregistratie inschakelen zoals beschreven in de vorige stappen en vervolgens de volgende stappen uitvoeren:
Selecteer in het dialoogvenster Servereigenschappen de pagina Geavanceerd.
In de sectie Gebruikersgedefinieerde, wijzig de ExecutionLogLevel- naar uitvoerig. Dit veld is een tekstinvoerveld en de twee mogelijke waarden zijn uitgebreid en normaal.
Logboekvelden (ExecutionLog3)
Deze weergave voegt meer prestatiediagnoseknooppunten toe in de op XML gebaseerde AdditionalInfo kolom. De kolom AdditionalInfo bevat een XML-structuur van 1 tot veel gegevensvelden. In het volgende voorbeeld ziet u een Transact SQL-instructie waarmee rijen worden opgehaald uit de weergave ExecutionLog3. In het voorbeeld wordt ervan uitgegaan dat de rapportserverdatabase ReportServer heet.
Use ReportServer
select * from ExecutionLog3 order by TimeStart DESC
In de volgende tabel worden de gegevens beschreven die zijn vastgelegd in het uitvoeringslogboek van het rapport.
Kolom | Beschrijving |
---|---|
InstanceName | Naam van het rapportserverexemplaar dat de aanvraag heeft verwerkt. Als uw omgeving meer dan één rapportserver heeft, kunt u de InstanceName-distributie analyseren om te controleren en te bepalen of uw netwerktaakverdeling aanvragen distribueert over rapportservers zoals verwacht. |
ItemPath | Pad van waar een rapport of rapportitem wordt opgeslagen. |
Gebruikersnaam | Gebruikers-id. |
ExecutionID | De interne id die is gekoppeld aan een aanvraag. Aanvragen voor dezelfde gebruikerssessies delen dezelfde uitvoerings-id. |
Aanvraagtype | Mogelijke waarden: Interactief Abonnement Door logboekgegevens te analyseren die zijn gefilterd op RequestType=Subscription en gesorteerd op TimeStart kunnen perioden van intensief abonnementsgebruik worden weergegeven en wilt u mogelijk enkele van de rapportabonnementen op een andere tijd wijzigen. |
Formaat | Renderingformaat. |
Parameters | Parameterwaarden die worden gebruikt voor de uitvoering van een rapport. |
ItemActie | Mogelijke waarden:Render Sort BookMarkNavigation DocumentNavigation GetDocumentMap Findstring Execute RenderEdit . |
TijdBegin | Begin- en eindtijden die de duur van een rapportproces aangeven. |
Eindtijd | |
TijdgegevensOpvragen | Het aantal milliseconden dat is besteed aan het ophalen van de gegevens. |
Tijdverwerking | Het aantal milliseconden dat aan het verwerken van het rapport is besteed. |
TimeRendering | Het aantal milliseconden dat is besteed aan het weergeven van het rapport. |
Bron | Bron van de uitvoering van het rapport. Mogelijke waarden: Live Cache: geeft een uitvoering vanuit de cache aan, bijvoorbeeld dat datasetquery's niet live worden uitgevoerd. Momentopname Geschiedenis AdHoc: Geeft aan of het een dynamisch gegenereerd rapportmodel of een detailrapport betreft. Het kan ook verwijzen naar een Report Builder-rapport dat wordt bekeken op een client die gebruikmaakt van de rapportserver voor verwerking en rendering. Sessie: Geeft een opvolgingsaanvraag aan binnen een reeds tot stand gebrachte sessie. De eerste aanvraag is bijvoorbeeld om pagina 1 weer te geven en de opvolgingsaanvraag is om te exporteren naar Excel met de huidige sessiestatus. Extensie voor aanpassing van rapportdefinities (RDCE): Geeft een uitbreiding voor aanpassing van rapportdefinities aan. Een aangepaste RDCE-extensie kan een rapportdefinitie dynamisch aanpassen voordat de definitie wordt doorgegeven aan de verwerkingsengine bij de uitvoering van het rapport. |
Toestand | Status (rsSuccess of een foutcode; als er meerdere fouten optreden, wordt alleen de eerste fout vastgelegd). |
ByteCount | Grootte van weergegeven rapporten in bytes. |
RowCount | Aantal rijen dat per query wordt geretourneerd. |
AanvullendeInformatie | Een XML-eigenschappentas met aanvullende informatie over de uitvoering. De inhoud kan voor elke rij verschillen. |
Het veld AanvullendeInformatie
Het veld AdditionalInfo is een XML-eigenschappenverzameling of -structuur met aanvullende informatie over de uitvoering. De inhoud kan voor elke rij in het logboek verschillen.
Hieronder ziet u voorbeelden van de inhoud van het AdditionalInfo veld voor zowel standaard- als uitgebreide logboekregistratie:
Standaardlogboekregistratievoorbeeld van AdditionalInfo
<AdditionalInfo>
<ProcessingEngine>2</ProcessingEngine>
<ScalabilityTime>
<Pagination>0</Pagination>
<Processing>0</Processing>
</ScalabilityTime>
<EstimatedMemoryUsageKB>
<Pagination>0</Pagination>
<Processing>6</Processing>
</EstimatedMemoryUsageKB>
<DataExtension>
<SQL>1</SQL>
</DataExtension>
<Connections>
<Connection>
<ConnectionOpenTime>147</ConnectionOpenTime>
<DataSets>
<DataSet>
<Name>DataSet1</Name>
<RowsRead>16</RowsRead>
<TotalTimeDataRetrieval>642</TotalTimeDataRetrieval>
<ExecuteReaderTime>63</ExecuteReaderTime>
</DataSet>
<DataSet>
<Name>DataSet2</Name>
<RowsRead>3</RowsRead>
<TotalTimeDataRetrieval>157</TotalTimeDataRetrieval>
<ExecuteReaderTime>60</ExecuteReaderTime>
</DataSet>
</DataSets>
</Connection>
</Connections>
</AdditionalInfo>
Uitgebreid logboekregistratievoorbeeld van AdditionalInfo
<AdditionalInfo>
<ProcessingEngine>2</ProcessingEngine>
<ScalabilityTime>
<Pagination>0</Pagination>
<Processing>0</Processing>
</ScalabilityTime>
<EstimatedMemoryUsageKB>
<Pagination>0</Pagination>
<Processing>6</Processing>
</EstimatedMemoryUsageKB>
<DataExtension>
<SQL>1</SQL>
</DataExtension>
<Connections>
<Connection>
<ConnectionOpenTime>127</ConnectionOpenTime>
<DataSource>
<Name>DataSource1</Name>
<DataExtension>SQL</DataExtension>
</DataSource>
<DataSets>
<DataSet>
<Name>DataSet1</Name>
<RowsRead>16</RowsRead>
<TotalTimeDataRetrieval>655</TotalTimeDataRetrieval>
<QueryPrepareAndExecutionTime>94</QueryPrepareAndExecutionTime>
<ExecuteReaderTime>33</ExecuteReaderTime>
<DataReaderMappingTime>30</DataReaderMappingTime>
<DisposeDataReaderTime>1</DisposeDataReaderTime>
</DataSet>
<DataSet>
<Name>DataSet2</Name>
<RowsRead>3</RowsRead>
<TotalTimeDataRetrieval>16</TotalTimeDataRetrieval>
<QueryPrepareAndExecutionTime>2</QueryPrepareAndExecutionTime>
<ExecuteReaderTime>1</ExecuteReaderTime>
<DataReaderMappingTime>0</DataReaderMappingTime>
<DisposeDataReaderTime>0</DisposeDataReaderTime>
</DataSet>
</DataSets>
</Connection>
</Connections>
</AdditionalInfo>
De volgende voorbeelden zijn enkele van de waarden die u ziet in het veld AdditionalInfo:
ProcessingEngine
Als de meeste rapporten nog steeds de waarde 1 tonen, kunt u onderzoeken hoe u ze opnieuw ontwerpt, zodat ze gebruikmaken van de nieuwere en efficiëntere on-demand verwerkingsengine.
1=SQL Server 2005, 2=The new On-demand Processing Engine
<ProcessingEngine>2</ProcessingEngine>
ScalabilityTime
Het aantal milliseconden dat is besteed aan het uitvoeren van schaalgerelateerde bewerkingen in de verwerkingsengine. Een waarde van
0
geeft aan dat er geen andere tijd is besteed aan schaalbewerkingen en een0
geeft ook aan dat de aanvraag niet onder geheugendruk valt.<ScalabilityTime> <Processing>0</Processing> </ScalabilityTime>
EstimatedMemoryUsageKB-
Een schatting van de piekhoeveelheid geheugen, in kilobytes, die tijdens een bepaalde aanvraag door elk onderdeel wordt verbruikt.
<EstimatedMemoryUsageKB> <Processing>38</Processing> </EstimatedMemoryUsageKB>
DataExtension
De typen gegevensextensies of gegevensbronnen die in het rapport worden gebruikt. Het getal is een telling van het aantal exemplaren van de specifieke gegevensbron.
<DataExtension> <DAX>2</DAX> </DataExtension>
ExternalImages
De waarde is in milliseconden. Deze gegevens kunnen worden gebruikt om prestatieproblemen te diagnosticeren. De tijd die nodig is om afbeeldingen op te halen van een externe webserver kan de algehele uitvoering van het rapport vertragen.
<ExternalImages> <Count>3</Count> <ByteCount>9268</ByteCount> <ResourceFetchTime>9</ResourceFetchTime> </ExternalImages>
verbindingen
Een structuur met meerdere niveaus
<Connections> <Connection> <ConnectionOpenTime>127</ConnectionOpenTime> <DataSource> <Name>DataSource1</Name> <DataExtension>SQL</DataExtension> </DataSource> <DataSets> <DataSet> <Name>DataSet1</Name> <RowsRead>16</RowsRead> <TotalTimeDataRetrieval>655</TotalTimeDataRetrieval> <QueryPrepareAndExecutionTime>94</QueryPrepareAndExecutionTime> <ExecuteReaderTime>33</ExecuteReaderTime> <DataReaderMappingTime>30</DataReaderMappingTime> <DisposeDataReaderTime>1</DisposeDataReaderTime> </DataSet> <DataSet> <Name>DataSet2</Name> <RowsRead>3</RowsRead> <TotalTimeDataRetrieval>16</TotalTimeDataRetrieval> <QueryPrepareAndExecutionTime>2</QueryPrepareAndExecutionTime> <ExecuteReaderTime>1</ExecuteReaderTime> <DataReaderMappingTime>0</DataReaderMappingTime> <DisposeDataReaderTime>0</DisposeDataReaderTime> </DataSet> </DataSets> </Connection> </Connections>
Logboekvelden (ExecutionLog2)
In deze weergave zijn enkele nieuwe velden toegevoegd en zijn enkele andere velden hernoemd. Het volgende voorbeeld is een Transact SQL-instructie waarmee rijen worden opgehaald uit de weergave ExecutionLog2. In het voorbeeld wordt ervan uitgegaan dat de rapportserverdatabase de naam ReportServer
heeft:
Use ReportServer
select * from ExecutionLog2 order by TimeStart DESC
In de volgende tabel worden de gegevens beschreven die zijn vastgelegd in het uitvoeringslogboek van het rapport.
Kolom | Beschrijving |
---|---|
InstanceName | Naam van het rapportserverexemplaar waarvan de aanvraag is verwerkt. |
ReportPath | De padstructuur naar het rapport. Een rapport dat is opgeslagen in de hoofdmap als test, heeft een ReportPath van /test .Een rapport met de naam test die is opgeslagen in de map Voorbeelden, zou een ReportPath van /Samples/test/ hebben. |
Gebruikersnaam | Gebruikers-id. |
UitvoeringsID | |
Verzoektype | Het aanvraagtype is user of system . |
Formaat | Rendering-formaat. |
Parameters | Parameterwaarden die worden gebruikt voor de uitvoering van een rapport. |
ReportAction | Mogelijke waarden: Render , Sort , BookMarkNavigation , DocumentNavigation , GetDocumentMap , Findstring . |
Starttijd | Begintijd die de duur van een rapportproces aangeeft. |
Eindtijd | Eindtijd die de duur van een rapportproces aangeeft. |
TimeDataRetrieval | Het aantal milliseconden dat is besteed aan het ophalen van de gegevens. |
Tijdverwerking | Aantal milliseconden besteed aan het verwerken van het rapport. |
Tijdrendering | Het aantal milliseconden dat is besteed aan het weergeven van het rapport. |
Bron | Bron van de uitvoering van het rapport. Opties zijn 1=Live , 2=Cache , 3=Snapshot , 4=History . |
Status | De status is rsSuccess of een foutcode. Als er meerdere fouten optreden, wordt alleen de eerste fout vastgelegd. |
ByteCount | Grootte van weergegeven rapporten in bytes. |
RowCount | Aantal rijen dat wordt geretourneerd uit queries. |
Aanvullende Informatie | Een XML-eigenschappentas met aanvullende informatie over de uitvoering. |
Logboekvelden (ExecutionLog)
Het volgende voorbeeld is een Transact SQL-instructie waarmee rijen worden opgehaald uit de weergave ExecutionLog. In het voorbeeld wordt ervan uitgegaan dat de rapportserverdatabase de naam ReportServer
heeft:
Use ReportServer
select * from ExecutionLog order by TimeStart DESC
In de volgende tabel worden de gegevens beschreven die zijn vastgelegd in het uitvoeringslogboek van het rapport.
Kolom | Beschrijving |
---|---|
InstanceNaam | Naam van het rapportserverexemplaar die de aanvraag heeft verwerkt. |
ReportID | Rapport-id. |
Gebruikersnaam | Gebruikers-id. |
Soort Verzoek | Mogelijke waarden: True = Een abonnementsaanvraag False= Een interactieve aanvraag |
Formaat | Renderingformaat. |
Parameters | Parameterwaarden die worden gebruikt voor de uitvoering van een rapport. |
TijdStart | Begin- en eindtijden die de duur van een rapportproces aangeven. |
Eindtijd | |
Tijdgegevensopvraging | Het aantal milliseconden dat is besteed aan het ophalen van de gegevens, het verwerken van het rapport en het weergeven van het rapport. |
Tijdverwerking | |
Tijdsweergave | |
Bron | Bron van de uitvoering van het rapport. Mogelijke waarden: (1=Live, 2=Cache, 3=Snapshot, 4=History, 5=Adhoc, 6=Session, 7=RDCE). |
Status | Mogelijke waarden zijn rsSuccess , rsProcessingAborted of een foutcode. Als er meerdere fouten optreden, wordt alleen de eerste fout vastgelegd. |
ByteCount | Grootte van weergegeven rapporten in bytes. |
RowCount | Aantal rijen dat wordt geretourneerd uit query's. |