Request Status
This screen displays information about the status of Data Discovery and SQL Pass-thru requests made by clients. It is accessible from the main menu (Request Status) or from the URL /reqstatus
.
It can be useful for monitoring the progress of long-running requests and seeing where in the SlashDB execution pipeline they are taking longest to process.
This page is always accessible to the admin user.
Non-admin users will be able to see Data Discovery requests for databases that they have mappings for, and for any SQL Pass-thru queries that they have execute permissions for.
Important
If running SlashDB in multiprocess mode, you must configure the memcache daemon for the Request Status page to register all requests properly.
Request Status List
Each request entry will appear in a list.
The list can be searched using the Search field above the list or sorted by clicking on column headers. The All dropdown filters requests by their status. The Refresh button will refresh the list to include the latest requests.
Info
The list does not refresh automatically.
Important
Requests are not kept in the list forever. They will disappear after exceeding a certain time threshold. See INI Parameters for more info.
Each entry in the list has:
- a unique Request ID assigned to the request
- the HTTP Method of the request (GET, POST, PUT, DELETE)
- the URL Path of the request
- the Start Time when the incoming request was received
- the current Duration of the request (in milliseconds)
- the current Status of the request - can be Completed, Executing, or Failed
Info
The list is also available in JSON format at /reqstatus.json
.
Actions
To view more details about the request, click the List icon in the Action column.
Request Status Details
Clicking on the corresponding List icon for an entry in the list will reveal a pane with more details:
- the user_id that executed the request
- the HTTP method of the request
- the proc_id (process ID) of the SlashDB process that executed the request
- the t_id (thread ID) of the SlashDB worker that handled the request
- the t_name (thread name) of the SlashDB worker that is handling the request
- the URL path of the request
- the redir_path (redirected path), if the request completes with a 3xx HTTP status code
- the database resource, for Data Discovery requests, or the query_id for SQL Pass-thru requests
- the db_id (database ID)
- the http_status_code of the response
- the err_msg (error message) logged if the request fails
Info
HTTP status codes will not appear until the response has been generated.
URL Parameters (Modifiers) that were provided with the request are also listed.
Finally, there is a Status Timeline with timestamps, showing each stage of the request as it goes through the execution pipeline.
This can be used to determine how long each stage of a request takes to complete. Refreshing the Request Status list will update the status timeline of an executing request with the latest available status.
Below are two request details panes; on the left a successful request, on the right a failed request:
INI Parameters
The following INI parameters control how long to store request statuses on the page. See the INI setttings for more details.
request_status_ok_lifetime
- how long to keep successfully completed requests in the Request Status viewrequest_status_err_lifetime
- how long to keep requests that completed with an error in the Request Status view