SQL SSRS Requests Test

One of the key factors influencing user experience with the report server is its ability to process HTTP requests. If HTTP requests are serviced slowly by the report server, or if requests are frequently rejected by the server owing to server unavailability/overload, users may not be able to generate the reports they need when they need it. Likewise, request failures caused by authentication failures and communication errors between user and the server can also significantly impact user access and productivity. To ensure high user satisfaction with the report server therefore, administrators must pay attention to how well the report server processes HTTP requests, promptly detect failures, rejections, and latencies in request processing, and quickly initiate corrective measures. This is where the SQL SSRS Requests test helps!

Administrators can use this test to track HTTP requests to the server and quickly capture bottlenecks in report processing. The test reveals if the server is processing requests slowly or not. The test also points administrators to request failures, rejections, and communication issues.

Target of the test : A Microsoft SQL Server Reporting Services server

Agent deploying the test : A remote agent

Outputs of the test : One set of results for the report server being monitored

Configurable parameters for the test
Parameters Description

Test period

How often should the test be executed


The host for which the test is to be configured.


The port at which the specified Host listens.


The name of a specific SQL Report server instance to be monitored. The default value of this parameter is “default”. However, if the Microsoft SQL Server hosting the SQL Reporting Server database uses named instances, then do the following:

  • Configure the Instance parameter with the name of the SQL Server instance that hosts the SQL Report Server database.
  • Do not change the default value of the Port parameter

Is Passive

If the value chosen is Yes, then the Microsoft SQL server (hosting the SQL report server database) under consideration is a passive server in a SQL cluster. No alerts will be generated if the server is not running. Measures will be reported as “Not applicable’ by the agent if the server is not up.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Requests process rate

Indicates the number of requests that are processed per second.


This value represents the current throughput of the application.

A consistent decrease in the value of this measure is a cause for concern, as it indicates that the report server is sluggish in terms of request processing.

Current requests

Indicates the number of requests that are currently processing.


This is a good measure of the current workload of the server.

Requests failed rate

Indicates the rate of requests that failed with an HTTP 401 status code.


Ideally, the value of this measure should be 0. A non-zero value indicates that requests are failing every second owing to an HTTP 401 error.

The HTTP 401 response code indicates that the request has not been applied because it lacks valid authentication credentials for the target resource. This status is sent with a WWW-Authenticate header that contains information on how to authorize correctly.

Requests rejected rate

Indicates the rate of requests that were not processed because of insufficient server resources.


The value of this measure represents the count of requests that returned the HTTP 503 response code. This response code indicates that the server is not ready to handle the request. Common causes are a server that is down for maintenance or that is overloaded.

Requests disconnected rate

Indicates the rate of requests that are disconnected because of a communication failure.


A low value is desired for this measure.

Tasks in queue

Indicates the number of tasks that are waiting for a thread to become available for processing.


Each request made to the report server corresponds to one or more tasks. This counter represents only the number of tasks that are ready for processing; it does not include the number of tasks that are currently running.