docs/docs/observability/cloud-monitoring/operations.mdx
import Thumbnail from '@site/src/components/Thumbnail'; import HeadingIcon from '@site/src/components/HeadingIcon'; import ProductBadge from '@site/src/components/ProductBadge';
The Operations tab will present a processed real-time log of all requests to the GraphQL Engine. Here you can also inspect individual operations.
<Thumbnail src="/img/observability/operations_overview_2.16.0.png" alt="Hasura Cloud Console list operations" /> <Thumbnail src="/img/observability/pro-tab-operations-inspect.png" alt="Hasura Cloud Console inspect operation" />At the top of the Monitoring > Operations page in the Console, you can select whether to turn on "Capture query
variables" which is disabled by default.
<Thumbnail src="/img/observability/operations_enable-extra-features_2.16.0.png" alt="Hasura Cloud Console enable extra Operations features" width={'600px'} />
When "Capture query variables" is enabled, you are able to inspect the query variables provided for each request.
<Thumbnail src="/img/observability/operations_capture-query-variables_2.16.0.png" alt="Hasura Cloud Console Operations capture query variables" />
Operation
Any GraphQL (query, mutation, subscription) request made to v1/graphql endpoint of a GraphQL Engine instance
Operation name
(Optional) Any GraphQL request can be labelled with a name by the client making the query. In this example,
getPollOptions is the operation name:
query getPollOptions (
poll {
options {
id
name
description
}
}
}
Operation ID
A unique, auto-generated hash for each Operation name; can distinguish between different operations executed with the
same name
Operation type
Whether the operation is a query, mutation, or subscription
Request ID
A unique, auto-generated ID for each request, comes from x-request-id HTTP header
Websocket ID
A unique ID generated by the server when a websocket connection is established by the client
Websocket Operation ID
A unique ID generated by the websocket client for each operation it is sending to the server
Click on the Filter header to open the menu of filter options
| Filter option | Filter type | Example or options |
|---|---|---|
| Time range | timestamps | last hour, last 6 hours, last 12 hours, last 24 hours, or custom range |
| Operation ID | string (text field) | 5284946f4e15aa81bc868316d56aa68f |
| Operation Name | string (text field) | getPollOptions |
| Request ID | string (text field) | e15f7bj9-3b9f-4152-92a4-e745471514af |
| Show only errors | boolean (checkbox field) | true or false (default false) |
| Websocket ID | string (text field) | def703fc-851f-48e8-8e5c-cbdead37b2fe |
| Websocket Operation ID | string (text field) | 110 |
| Hide introspection query | boolean (checkbox field) | true or false (default false) |
| Operation Type | enum (select field) | query, mutation, subscription, all |
| Role | enum (select field) | from x-hasura-user-role: no role, admin, user, ... |
| Error Code | enum (select field) | no error code, access-denied, depth-limit-exceeded, ... |
| Client Name | enum (select field) | no client name, hasura-console, hasura-test-runner, ... |
| Transport | enum (select field) | http or ws |
| Status | enum (select field) | started or closed |
Each column in the Operations List can be sorted (ascending or descending) just by clicking on it. Very useful for identifying operations with unusually high execution time or response size!