locked
SSRS Report Executions RRS feed

  • Question

  • I have a need to get the number of executions of a report(s) currently taking place. I thought that maybe, the execution log view on the report server database inserted a new record each time a report execution started, with the report (item), item path, username, and timestart... then just updated the record with the timeend, the other time field values, etc. Unfortunately though, the record isn't inserted into the execution log until the report run is complete (with all information).

    I've done some google searching and find plenty about how to get information on report runs, but this is of course on report executions that have completed. I haven't been able to find anything on if there is a way, and how, to get a count of a particular report or reports that have executions currently in progress.

    Just wondering if there is a way of doing this.

    Thanks in advance.

    Friday, September 23, 2016 3:03 PM

Answers

  • Hi ddog0823,

    So in your scenario, you want to extract the records that are generated during the reports executing. However, as I know it current Reporting Service database. There's no table that is used to store these information.

    If you still have any questions, please feel free to ask.

    Thanks,

    Xi Jin.

    • Proposed as answer by TUSG Thursday, September 29, 2016 6:52 PM
    • Marked as answer by Xi Jin Thursday, October 6, 2016 9:25 AM
    Thursday, September 29, 2016 7:00 AM

All replies

  • Hi Dfog0823,

    What is your edition ?

    select * From dbo.ExecutionLog2:  for SQL Server 2008

    select * From dbo.ExecutionLog3:  for SQL Server 2008 R2  (same as ExecutionLog2, with 2 fields renamed:  ReportPath is now ItemPath, and ReportAction is now ItemAction)

    Refer link

    http://www.sqlchick.com/entries/2011/2/6/querying-the-report-server-execution-log.html


    Please click Mark As Answer if my post helped.

    • Proposed as answer by Xi Jin Monday, September 26, 2016 6:49 AM
    Friday, September 23, 2016 3:26 PM
  • SQL Server 2014 Sp1 Enterprise Edition
    Friday, September 23, 2016 4:26 PM
  • Hi ddog0823,

    According to your description, you want to retrieve the detailed Reporting Service reports execution information from report server database side. Right?

    The SQL Server 2014 is same as 2008 R2. As Dinesh Vishe said, you can get those information from the View ExecutionLog3 in report server database.

    If you still have any questions, please feel free to ask.

    Thanks,

    Xi Jin.

    Monday, September 26, 2016 6:49 AM
  • Does the report execution log show which reports are executing/currently running? (something like SQL job activity monitor?) 
    • Edited by TUSG Monday, September 26, 2016 7:08 AM
    Monday, September 26, 2016 7:08 AM
  • Yes, I know where I can get the information from. However, I don't see the report executions in the ExecutionLog3 view until after the report execution has completed. Rather, as the question stated, I need to see what reports are currently running, so when I execute a report run, and it is still executing when I query the ExecutionLog3, the view doesn't have that record until after the report execution is complete. Is there some other way I can get that information?
    Monday, September 26, 2016 1:10 PM
  • No, unfortunately it does not. How can I get that information?
    Monday, September 26, 2016 1:11 PM
  • Hi ddog0823,

    So in your scenario, you want to extract the detailed report information even the report is not executed. Right?

    Then I would suggest you check the Catalog table under the report server database. At the time we deploy the report to the report server, its information will be stored in this table even it is not executed.

    Reference: Retrieve SSRS report server database information 

    If you still have any questions, please feel free to ask.

    Thanks,

    Xi Jin.

    Tuesday, September 27, 2016 8:52 AM
  • Hi Xi Jin,

    No, I don't want a list of all reports that exist on the report server.

    I want to be able to see what reports are currently executing.

    The Catalog table seems to store a list of all reports deployed to the report server. The ExecutionLog3 show all report executions, but only after their executions have completed. I need to be able to query the ExecutionLog3 (or something else) and see what reports are currently running/being executed. It appears that the ExecutionLog3 doesn't show report executions until execution is complete (not in-progress executions... is there some way I can get that information?).

    Tuesday, September 27, 2016 1:11 PM
  • Here is a little more detail...

    What I'm looking for is, when a user clicks on 'View Report', for the ExecutionLog3 (or something else if there is) to show a record for that report execution with values for the InstanceName, ItemPath, UserName, ExecutionId, RequestType, Format, Parameters, ItemAction, and TimeStart fields, and the other fields... TimeEnd, TimeDataRetrieval, TimeProcessing, TimeRendering, Source, Status, ByteCount, and RowCount ... would have a NULL value. Then, after the report execution completes and data is returned, that record would just get updated, updating the values for the fields that previously had NULL values.

    Is there some way to get that information? (what report executions are CURRENTLY in progress) 

    Tuesday, September 27, 2016 1:20 PM
  • Hi ddog0823,

    So in your scenario, you want to extract the records that are generated during the reports executing. However, as I know it current Reporting Service database. There's no table that is used to store these information.

    If you still have any questions, please feel free to ask.

    Thanks,

    Xi Jin.

    • Proposed as answer by TUSG Thursday, September 29, 2016 6:52 PM
    • Marked as answer by Xi Jin Thursday, October 6, 2016 9:25 AM
    Thursday, September 29, 2016 7:00 AM