Dela via


Använda ExecutionLog och ExecutionLog3-vyn i Reporting Services

Rapportserverns körningslogg för Reporting Services innehåller information om de rapporter som körs på servern eller på flera servrar. Dessa servrar är i en skalbar distribution i inbyggt läge eller i en SharePoint-servergrupp. Du kan använda körningsloggen för att ta reda på:

  • Antal gånger som en rapport begärs.
  • Vilka utdataformat används mest.
  • Bearbetningstiden för varje bearbetningsfas i millisekunder.

Loggen innehåller information om hur lång tid det tar att köra en rapports datauppsättningsfråga och hur lång tid det tar att bearbeta data. Om du är rapportserveradministratör kan du granska logginformationen och identifiera tidskrävande uppgifter. Du kan också ge förslag till rapportförfattarna om de områden i datamängden eller bearbetningsrapporten som de kanske kan förbättra.

Rapportservrar som konfigurerats för SharePoint-läge kan också använda ULS-loggar (SharePoint Unified Logging Service). För mer information, se Aktivera Reporting Services-händelser för SharePoint-spårningsloggen (ULS)

Visa logguppgifter

Rapportservern loggar data om rapportkörning till en intern databastabell. Informationen från tabellen är tillgänglig från SQL Server-vyer.

Rapportkörningsloggen lagras i rapportserverdatabasen som som standard heter ReportServer. SQL-vyerna tillhandahåller körningslogginformationen. Vyerna "2" och "3" lades till i nyare versioner och innehåller nya fält, eller så innehåller de fält med vänligare namn än de tidigare versionerna. De äldre vyerna finns kvar i produkten så att anpassade program som är beroende av dem inte påverkas. Om du inte är beroende av en äldre vy, till exempel ExecutionLog, bör du använda den senaste vyn ExecutionLog3.

Konfigurationsinställningar för en rapportserver i SharePoint-läge

Du kan aktivera eller inaktivera loggning av rapportkörning från systeminställningarna för ett Reporting Services-tjänstprogram.

Som standard sparas loggposter i 60 dagar. Poster som överskrider det här datumet tas bort kl. 02:00 varje dag. Vid en mogen installation är endast 60 dagars information tillgänglig vid en viss tidpunkt.

Du kan inte ange gränser för antalet rader eller vilken typ av poster som loggas.

Aktivera exekveringsloggning för en SharePoint-server

  1. Välj Hantera tjänstprogram i gruppen Application Management i SharePoint Central Administration.

  2. Välj namnet på det Reporting Services-tjänstprogram som du vill konfigurera.

  3. Välj Systeminställningar.

  4. Välj Aktivera körningsloggning i avsnittet Loggning.

  5. Välj OK.

Aktivera utförlig loggning för en SharePoint-server

Du måste aktivera loggning enligt beskrivningen i föregående steg och sedan utföra följande steg:

  1. På sidan Systeminställningar i ditt Reporting Services-tjänstprogram hittar du avsnittet Användardefinierad.

  2. Ändra ExecutionLogLevel- till utförlig. Det här fältet är ett textinmatningsfält och de två möjliga värdena är utförlig och normal.

Konfigurationsinställningar för en rapportserver i inbyggt läge

Du kan aktivera eller inaktivera loggning av rapportkörning från sidan Serveregenskaper i SQL Server Management Studio. EnableExecutionLogging är en avancerad egenskap.

Som standard sparas loggposter i 60 dagar. Poster som överskrider det här datumet tas bort kl. 02:00 varje dag. Vid en mogen installation är endast 60 dagars information tillgänglig vid en viss tidpunkt.

Du kan inte ange gränser för antalet rader eller vilken typ av poster som loggas.

Aktivera körningsloggning för en native mode-server

  1. Starta SQL Server Management Studio med administratörsbehörighet. Högerklicka till exempel på Management Studio-ikonen och välj Kör som administratör.

  2. Anslut till önskad rapportserver.

  3. Högerklicka på servernamnet och välj Egenskaper. Om alternativet Egenskaper är inaktiverat kontrollerar du att du har kört SQL Server Management Studio med administratörsbehörighet.

  4. Välj sidan Loggning.

  5. Välj Aktivera loggning för rapportkörning.

Aktivera utförlig loggning för en inbyggd modserver

Du måste aktivera loggning enligt beskrivningen i föregående steg och sedan utföra följande steg:

  1. I dialogrutan Serveregenskaper väljer du sidan Avancerat.

  2. I avsnittet Användardefinierad ändrar du ExecutionLogLevel- till utförlig. Det här fältet är ett textinmatningsfält och de två möjliga värdena är utförlig och normal.

    Skärmbild av dialogrutan Serveregenskaper som markerar fältet ExecutionLogLevel satt till utförligt.

Loggfält (ExecutionLog3)

Den här vyn lägger till fler prestandadiagnostiknoder i kolumnen XML-baserad AdditionalInfo. Kolumnen AdditionalInfo innehåller en XML-struktur på 1 till många informationsfält. I följande exempel visas en Transact SQL-instruktion som hämtar rader från vyn ExecutionLog3. Exemplet förutsätter att rapportserverdatabasen heter ReportServer:

Use ReportServer  
select * from ExecutionLog3 order by TimeStart DESC  

I följande tabell beskrivs de data som samlas in i rapportkörningsloggen.

Kolumn Beskrivning
InstansNamn Namnet på rapportserverinstansen som hanterade begäran. Om din miljö har mer än en rapportserver kan du analysera InstanceName-distributionen för att övervaka och avgöra om nätverksbelastningsbalanseraren distribuerar begäranden mellan rapportservrar som förväntat.
ItemPath Sökväg till var en rapport eller ett rapportobjekt lagras.
Användarnamn Användaridentifierare.
ExecutionID Den interna identifierare som är associerad med en begäran. Begäranden på samma användarsessioner delar samma körnings-ID.
Begäranstyp Möjliga värden:

Interaktiv

Abonnemang



Analys av loggdata filtrerade efter RequestType=Subscription och sorterade efter TimeStart kan avslöja perioder med hög prenumerationsanvändning och du kanske vill ändra vissa rapportprenumerationer till en annan tid.
Format Renderingsformat.
Parametrar Parametervärden som används vid rapportgenerering.
ArtikelÅtgärd Möjliga värden:

Render

Sort

BookMarkNavigation

DocumentNavigation

GetDocumentMap

Findstring

Execute

RenderEdit.
TimeStart Start- och stopptider som anger varaktigheten för en rapportprocess.
TidSlut
Hämtning av tidsdata Antal millisekunder som använts för att hämta data.
Tidsbearbetning Antal millisekunder som använts för att bearbeta rapporten.
TimeRendering Antal millisekunder som använts för att återge rapporten.
Källa Källan till rapportens genomförande. Möjliga värden:

Leva

Cache: anger en cachelagrad körning, till exempel att datauppsättningsfrågor inte körs live.

Ögonblicksbild

Historia

AdHoc: Indikerar antingen en dynamiskt genererad rapportmodell eller en drill-through-rapport. Den kan också referera till en Report Builder-rapport som förhandsgranskas på en klient som använder rapportservern för bearbetning och återgivning.

Session: Anger en uppföljningsbegäran inom en redan etablerad session. Den första begäran är till exempel att visa sidan 1 och uppföljningsbegäran är att exportera till Excel med det aktuella sessionstillståndet.

Tillägg för anpassning av rapportdefinition (RDCE): Anger ett tillägg för anpassning av rapportdefinitioner. Ett anpassat RDCE-tillägg kan dynamiskt anpassa en rapportdefinition innan definitionen skickas till bearbetningsmotorn vid rapportkörning.
Status Status (antingen rsSuccesss eller en felkod; om flera fel inträffar registreras endast det första felet).
Byteantal Storleken på renderade rapporter i byte.
RowCount Antal rader som returneras från frågor.
Ytterligare information En XML-egenskapssamling som innehåller ytterligare information om exekveringen. Innehållet kan vara olika för varje rad.

Fältet YtterligareInformation

Fältet AdditionalInfo är en egenskapsuppsättning eller struktur i XML som innehåller ytterligare information om exekveringen. Innehållet kan vara olika för varje rad i loggen.

Följande är exempel på innehållet i fältet AdditionalInfo för både standard och utförlig loggning:

Exempel på standardloggning av 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>

Exempel på utförlig loggning av 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>

Följande exempel är några av de värden som visas i fältet AdditionalInfo:

  • ProcessingEngine

    Om de flesta av dina rapporter fortfarande visar värdet 1 kan du undersöka hur de ska utformas om så att de använder den nyare och effektivare bearbetningsmotorn på begäran.

    1=SQL Server 2005, 2=The new On-demand Processing Engine
    
    <ProcessingEngine>2</ProcessingEngine>
    
  • Skalbarhetstid

    Antalet millisekunder som använts för att utföra skalningsrelaterade åtgärder i bearbetningsmotorn. Värdet 0 anger att ingen annan tid har lagts på skalningsåtgärder och en 0 anger också att begäran inte är under minnesbelastning.

    <ScalabilityTime>  
        <Processing>0</Processing>  
    </ScalabilityTime>  
    
  • UppskattadMinneAnvändningKB

    En uppskattning av den högsta mängden minne i kilobyte som förbrukas av varje komponent under en viss begäran.

    <EstimatedMemoryUsageKB>  
        <Processing>38</Processing>  
    </EstimatedMemoryUsageKB>  
    
  • DataExtension

    De typer av datatillägg eller datakällor som används i rapporten. Talet är ett antal förekomster av den specifika datakällan.

    <DataExtension>  
       <DAX>2</DAX>  
    </DataExtension>  
    
  • ExternalImages

    Värdet är i millisekunder. Dessa data kan användas för att diagnostisera prestandaproblem. Den tid som krävs för att hämta bilder från en extern webbserver kan fördröja den övergripande rapportkörningen.

    <ExternalImages>  
        <Count>3</Count>  
        <ByteCount>9268</ByteCount>  
        <ResourceFetchTime>9</ResourceFetchTime>  
    </ExternalImages>  
    
  • Anslutningar

    En struktur med flera nivåer

    <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>  
    
    

Loggfält (ExecutionLog2)

Den här vyn har lagt till några nya fält och bytt namn på några andra. Följande exempel är en Transact SQL-instruktion som hämtar rader från vyn ExecutionLog2. Exemplet förutsätter att rapportserverdatabasen heter ReportServer:

Use ReportServer  
select * from ExecutionLog2 order by TimeStart DESC  

I följande tabell beskrivs de data som samlas in i rapportkörningsloggen.

Spalt Beskrivning
InstanceName Namnet på rapportserverinstansen som hanterade begäran.
ReportPath Sökvägsstrukturen till rapporten. En rapport som sparats i rotmappen som test, har en ReportPath med /test.

En rapport med namnet test som sparas i mappen Samples, skulle ha en ReportPath med /Samples/test/.
Användarnamn Användaridentifierare.
ExecutionID
Förfrågningstyp Begärandetypen är antingen user eller system.
Format Renderingsformat.
Parametrar Parametervärden som används för körning av rapport.
RapporteraÅtgärd Möjliga värden: Render, Sort, BookMarkNavigation, DocumentNavigation, GetDocumentMap, Findstring.
TidStart Starttid som anger varaktigheten för en rapportprocess.
Sluttid Sluttid som anger varaktigheten för en rapportprocess.
TidsDataÅterhämtning Antal millisekunder som använts för att hämta data.
Tidsbehandling Antal millisekunder som använts för att bearbeta rapporten.
TimeRendering Antal millisekunder som använts för att återge rapporten.
Källa Källa för rapportkörningen. Alternativen är 1=Live, 2=Cache, 3=Snapshot, 4=History.
Status Statusen är antingen rsSuccess eller en felkod. Om flera fel inträffar registreras endast det första felet.
Byteantal Storleken på renderade rapporter i byte.
RowCount Antal rader som returneras från frågor.
Ytterligare information Ett XML-dokument med egenskaper som innehåller ytterligare information om exekveringen.

Loggfält (ExecutionLog)

Följande exempel är en Transact SQL-instruktion som hämtar rader från vyn ExecutionLog. Exemplet förutsätter att rapportserverdatabasen heter ReportServer:

Use ReportServer  
select * from ExecutionLog order by TimeStart DESC

I följande tabell beskrivs de data som samlas in i rapportkörningsloggen.

Spalt Beskrivning
InstanceName Namnet på rapportserverinstansen som hanterade begäran.
ReportID Rapportidentifierare.
Användarnamn Användaridentifierare.
Begäranstyp Möjliga värden:

True = En prenumerationsförfrågan

False= En interaktiv begäran
Format Visningsformat.
Parametrar Parametervärden som används för en rapportkörning.
Starttid Start- och stopptider som anger varaktigheten för en rapportprocess.
TidSlut
Tidsdatahämtning Antal millisekunder som använts för att hämta data, bearbeta rapporten och återge rapporten.
Tidsbearbetning
Tidsåtergivning
Källa Källan till rapportutförandet. Möjliga värden: (1=Live, 2=Cache, 3=Snapshot, 4=History, 5=Adhoc, 6=Session, 7=RDCE).
Status Möjliga värden är rsSuccess, rsProcessingAbortedeller en felkod. Om flera fel inträffar registreras endast det första felet.
ByteCount Storleken på renderade rapporter i byte.
RowCount Antal rader som returneras från frågor.