Project: CockroachDB (App Definition and Development / Database)
File: full.md

`GET /status/certificates/{nodeid}` Certificates retrieves a copy of the TLS certificates. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | certificates | | repeated | | | <a name="cockroach.server.serverpb.CertificatesResponse-cockroach.server.serverpb.CertificateDetails"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | type | | | | | | errormessage | | | "errormessage" and "data" are mutually exclusive. | | | fields | | repeated | | | <a name="cockroach.server.serverpb.CertificatesResponse-cockroach.server.serverpb.CertificateDetails.Fields"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | issuer | | | | | | subject | | | | | | valid_from | | | | | | valid_until | | | | | | addresses | | repeated | | | | signature_algorithm | | | | | | public_key | | | | | | key_usage | | repeated | | | | extendedkeyusage | | repeated | | | `GET /status/details/{nodeid}` Details retrieves details about the nodes in the cluster. Support status: DetailsRequest requests a nodes details. Note: this does not check readiness. Use the Health RPC for that purpose. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | address | | | | | | build_info | | | | | | system_info | | | | | | sql_address | | | | | <a name="cockroach.server.serverpb.DetailsResponse-cockroach.server.serverpb.SystemInfo"></a> SystemInfo contains information about the host system. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | systeminfo | | | systeminfo is the output from `uname -a` | | | kernelinfo | | | kernelinfo is the output from `uname -r`. | | RegionsRequest retrieves all available regions. Support status: RegionsRequest requests all available regions. RegionsResponse describes the available regions. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | regions | | repeated | | | <a name="cockroach.server.serverpb.RegionsResponse-cockroach.server.serverpb.RegionsResponse.RegionsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.RegionsResponse-cockroach.server.serverpb.RegionsResponse.Region"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | zones | | repeated | | | NodesList returns all available nodes with their addresses. Support status: NodesListRequest requests list of all

The nodes are KV nodes when the cluster is a single tenant cluster or the host cluster in case of multi-tenant clusters. The nodes are SQL instances in case of multi-tenant clusters. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | NodesListResponse contains a list of all nodes with their addresses. The nodes are KV nodes when the cluster is a single tenant cluster or the host cluster in case of multi-tenant clusters. The nodes are SQL instances in case of multi-tenant clusters. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodes | | repeated | nodes contains a list of NodeDetails. Each individual node within the list is a SQL node in case of a tenant server and KV nodes in case of a KV server. | | <a name="cockroach.server.serverpb.NodesListResponse-cockroach.server.serverpb.NodeDetails"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a unique identifier for the node. This corresponds to SQL instance ID for a tenant server and KV node id for for a KV server. | | | address | | | address is the RPC address for a KV node. This will be set to null for a tenant server node. | | | sqladdress | | | sqladdress is the SQL address for a node. | | `GET /_status/nodes` Nodes returns status info for all commissioned nodes. Decommissioned nodes are not included, except in rare cases where the node doing the decommissioning crashed before completing the operation. In these cases, the decommission operation can be rerun to clean up the status entry. Don't introduce additional usages of this RPC. See #50707 for more details. The underlying response type is something we're looking to get rid of. Support status: NodesRequest requests a copy of the node information as known to gossip and the KV layer. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | NodesResponse describe the nodes in the cluster. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodes | | repeated | nodes carries the status payloads for all nodes in the cluster. | | | livenessbynodeid | | repeated | livenessbynodeid maps each node ID to a liveness status. | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.NodeStatus"></a> NodeStatus records the most recent values of metrics for a node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the node descriptor. | | | buildinfo | | | buildinfo describes the `cockroach` executable file. | | | startedat | | | startedat is the unix timestamp at which the node process was last started. | | | updatedat | | | updatedat is the unix timestamp at which the node status record was last updated. | | | metrics | | repeated | metrics contains the last sampled values for the node

| | | storestatuses | | repeated | storestatuses provides the store status payloads for all the stores on that node. | | | args | | repeated | args is the list of command-line arguments used to last start the node. | | | env | | repeated | env is the list of environment variables that influenced the node's configuration. | | | latencies | | repeated | latencies is a map of nodeIDs to nanoseconds which is the latency between this node and the other node.<br><br>NOTE: this is deprecated and is only set if the min supported cluster version is >= VersionRPCNetworkStats. | | | activity | | repeated | activity is a map of nodeIDs to network statistics from this node to other nodes. | | | totalsystemmemory | | | totalsystemmemory is the total RAM available to the system (or, if detected, the memory available to the cgroup this process is in) in bytes. | | | numcpus | | | numcpus is the number of logical CPUs as reported by the operating system on the host where the `cockroach` process is running. Note that this does not report the number of CPUs actually used by `cockroach`; this parameter is controlled separately. | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.NodeStatus.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.StoreStatus"></a> StoreStatus records the most recent values of metrics for a store. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the store descriptor. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.StoreStatus.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.NodeStatus.LatenciesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.NodeStatus.ActivityEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.status.statuspb.NodeStatus.NetworkActivity"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | latency | | | in nanoseconds | | <a name="cockroach.server.serverpb.NodesResponse-cockroach.server.serverpb.NodesResponse.LivenessByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /status/nodes/{nodeid}` Node retrieves details about a single node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | NodeStatus records the most recent values of metrics for a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the node descriptor. | | | buildinfo | | | buildinfo describes the `cockroach` executable file. | | | startedat | | | startedat is the unix timestamp at which the node process was last started. | | | updatedat | | | updatedat is the unix timestamp at which the node status record was last updated. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | | storestatuses | | repeated | storestatuses provides the store status payloads for all the stores on that node. | | | args | | repeated | args is the list of command-line arguments used to last start the node. | | | env | | repeated | env is the list of environment variables that influenced the node's configuration. | | | latencies | | repeated | latencies is a map of nodeIDs to nanoseconds which is the latency between this node and the other node.<br><br>NOTE: this is deprecated and is only set if the min supported cluster version is >= VersionRPCNetworkStats. | | | activity | | repeated | activity is a map of nodeIDs to network statistics from this node to other nodes. | | | totalsystemmemory | | | totalsystemmemory is the total RAM available to the system (or, if detected, the memory available to the cgroup this process is in) in bytes. | | | numcpus | | | numcpus is the number of logical CPUs as reported by the operating system on the host where the `cockroach` process is running. Note that this does not report the number of CPUs actually used by `cockroach`; this parameter is controlled separately. | | <a name="cockroach.server.status.statuspb.NodeStatus-cockroach.server.status.statuspb.NodeStatus.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.status.statuspb.NodeStatus-cockroach.server.status.statuspb.StoreStatus"></a> StoreStatus records the most recent values of metrics for a store. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the store descriptor. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | <a name="cockroach.server.status.statuspb.NodeStatus-cockroach.server.status.statuspb.StoreStatus.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.status.statuspb.NodeStatus-cockroach.server.status.statuspb.NodeStatus.LatenciesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.status.statuspb.NodeStatus-cockroach.server.status.statuspb.NodeStatus.ActivityEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.status.statuspb.NodeStatus-cockroach.server.status.statuspb.NodeStatus.NetworkActivity"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | latency | | | in nanoseconds | | `GET /status/nodesui` Support status: NodesRequest requests a copy of the node information as known to gossip and the KV

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | NodesResponse describe the nodes in the cluster. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodes | | repeated | nodes carries the status payloads for all nodes in the cluster. | | | livenessbynodeid | | repeated | livenessbynodeid maps each node ID to a liveness status. | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeResponse"></a> NodeStatus records the most recent values of metrics for a node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the node descriptor. | | | buildinfo | | | buildinfo describes the `cockroach` executable file. | | | startedat | | | startedat is the unix timestamp at which the node process was last started. | | | updatedat | | | updatedat is the unix timestamp at which the node status record was last updated. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | | storestatuses | | repeated | storestatuses provides the store status payloads for all the stores on that node. | | | args | | repeated | args is the list of command-line arguments used to last start the node. args should only be visible by the Admin role. | | | env | | repeated | env is the list of environment variables that influenced the node's configuration. env should only be visible by the Admin role. | | | latencies | | repeated | latencies is a map of nodeIDs to nanoseconds which is the latency between this node and the other node.<br><br>NOTE: this is deprecated and is only set if the min supported cluster version is >= VersionRPCNetworkStats. | | | activity | | repeated | activity is a map of nodeIDs to network statistics from this node to other nodes. | | | totalsystemmemory | | | totalsystemmemory is the total RAM available to the system (or, if detected, the memory available to the cgroup this process is in) in bytes. | | | numcpus | | | numcpus is the number of logical CPUs as reported by the operating system on the host where the `cockroach` process is running. Note that this does not report the number of CPUs actually used by `cockroach`; this parameter is controlled separately. | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeDescriptor"></a> NodeDescriptor holds details on node physical/network topology. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | address | | | address should only be visible by the Admin role. | | | attrs | | | attrs should only be visible by the Admin role. | | | locality | | | | | | ServerVersion | | | | | | build_tag | | | | | | started_at | | | | | | localityaddress | | repeated | localityaddress should only be visible by the Admin role. | | | cluster_name | | | | | | sqladdress | | | The SQL address. If empty, indicates that the base address field is also used to accept SQL connections. sqladdress should only be visible by the Admin role. | | <a

Locality is an ordered set of key value Tiers that describe a node's location. The tier keys should be the same across all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tiers | | repeated | | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.Tier"></a> Tier represents one level of the locality hierarchy. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | Key is the name of tier and should match all other nodes. | | | value | | | Value is node specific value corresponding to the key. | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.Version"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | major_val | | | The names "major" and "minor" are reserved in C in some platforms (e.g. FreeBSD). | | | minor_val | | | | | | patch | | | Note that patch is a placeholder and will always be zero. | | | internal | | | The internal version is used to introduce migrations during the development cycle. They are subversions that are never the end versions of a release, i.e. users of stable, public release will only use binaries with the internal version set to 0. | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeResponse.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.StoreStatus"></a> StoreStatus records the most recent values of metrics for a store. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the store descriptor. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.StoreDescriptor"></a> StoreDescriptor holds store information including store attributes, node descriptor and store capacity. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | store_id | | | | | | attrs | | | | | | node | | | | | | capacity | | | | | | properties | | | | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeDescriptor"></a> NodeDescriptor holds details on node physical/network topology. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | address | | | address should only be visible by the Admin role. | | | attrs | | | attrs should only be visible by the Admin role. | | | locality | | | | | | ServerVersion | | | | | | build_tag | | | | | | started_at | | | | | | localityaddress | | repeated | localityaddress should only be visible by the Admin role. | | | cluster_name | | | | | | sqladdress | | | The SQL address. If empty, indicates that the base address field is also used to accept SQL connections. sqladdress should only be visible by the Admin role. | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeResponse.LatenciesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeResponse.ActivityEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodeResponse.NetworkActivity"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | latency | | | in nanoseconds | | <a name="cockroach.server.serverpb.NodesResponseExternal-cockroach.server.serverpb.NodesResponseExternal.LivenessByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /status/nodesui/{node_id}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | NodeStatus records the most recent values of metrics for a node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the node descriptor. | | | buildinfo | | | buildinfo describes the `cockroach` executable file. | | | startedat | | | startedat is the unix timestamp at which the node process was last started. | | | updatedat | | | updatedat is the unix timestamp at which the node status record was last updated. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | | storestatuses | | repeated | storestatuses provides the store status payloads for all the stores on that node. | | | args | | repeated | args is the list of command-line arguments used to last start the node. args should only be visible by the Admin role. | | | env | | repeated | env is the list of environment variables that influenced the node's configuration. env should only be visible by the Admin role. | | | latencies | | repeated | latencies is a map of nodeIDs to nanoseconds which is the latency between this node and the other node.<br><br>NOTE: this is deprecated and is only set if the min supported cluster version is >= VersionRPCNetworkStats. | | | activity | | repeated | activity is a map of nodeIDs to network statistics from this node to other nodes. | | | totalsystemmemory | | | totalsystemmemory is the total RAM available to the system (or, if detected, the memory available to the cgroup this process is in) in bytes. | | | numcpus | | | numcpus is the number of logical CPUs as reported by the operating system on the host where the `cockroach` process is running. Note that this does not report the number of CPUs actually used by `cockroach`; this parameter is controlled separately. | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.NodeDescriptor"></a> NodeDescriptor holds details on node physical/network

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | address | | | address should only be visible by the Admin role. | | | attrs | | | attrs should only be visible by the Admin role. | | | locality | | | | | | ServerVersion | | | | | | build_tag | | | | | | started_at | | | | | | localityaddress | | repeated | localityaddress should only be visible by the Admin role. | | | cluster_name | | | | | | sqladdress | | | The SQL address. If empty, indicates that the base address field is also used to accept SQL connections. sqladdress should only be visible by the Admin role. | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.Locality"></a> Locality is an ordered set of key value Tiers that describe a node's location. The tier keys should be the same across all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tiers | | repeated | | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.Tier"></a> Tier represents one level of the locality hierarchy. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | Key is the name of tier and should match all other nodes. | | | value | | | Value is node specific value corresponding to the key. | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.Version"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | major_val | | | The names "major" and "minor" are reserved in C in some platforms (e.g. FreeBSD). | | | minor_val | | | | | | patch | | | Note that patch is a placeholder and will always be zero. | | | internal | | | The internal version is used to introduce migrations during the development cycle. They are subversions that are never the end versions of a release, i.e. users of stable, public release will only use binaries with the internal version set to 0. | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.NodeResponse.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.StoreStatus"></a> StoreStatus records the most recent values of metrics for a store. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | desc is the store descriptor. | | | metrics | | repeated | metrics contains the last sampled values for the node metrics. | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.StoreDescriptor"></a> StoreDescriptor holds store information including store attributes, node descriptor and store capacity. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | store_id | | | | | | attrs | | | | | | node | | | | | | capacity | | | | | | properties | | | | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.NodeDescriptor"></a> NodeDescriptor holds details on node physical/network

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | address | | | address should only be visible by the Admin role. | | | attrs | | | attrs should only be visible by the Admin role. | | | locality | | | | | | ServerVersion | | | | | | build_tag | | | | | | started_at | | | | | | localityaddress | | repeated | localityaddress should only be visible by the Admin role. | | | cluster_name | | | | | | sqladdress | | | The SQL address. If empty, indicates that the base address field is also used to accept SQL connections. sqladdress should only be visible by the Admin role. | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.StoreStatus.MetricsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.NodeResponse.LatenciesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.NodeResponse.ActivityEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NodeResponse-cockroach.server.serverpb.NodeResponse.NetworkActivity"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | latency | | | in nanoseconds | | `GET /_status/raft` RaftDebug requests internal details about Raft. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_ids | | repeated | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | ranges | | repeated | | | | errors | | repeated | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftDebugResponse.RangesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftRangeStatus"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | | | | errors | | repeated | | | | nodes | | repeated | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftRangeError"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | message | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftRangeNode"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | range | | | | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | span | | | | | | raft_state | | | | | | state | | | | | | sourcenodeid | | | | | | sourcestoreid | | | | | | error_message | | | | | | lease_history | | repeated | | | | problems | | | | | | stats | | | | | | lease_status | | | | | | quiescent | | | | | | ticking | | | | | | read_latches | | | | | | write_latches | | | | | | locks | | | | | | lockswithwait_queues | | | | | | lockwaitqueue_waiters | | | | | | topklocksbywaitqueuewaiters | | repeated | | | | locality | | | | | | is_leaseholder | | | | | | lease_valid | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.PrettySpan"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | start_key | | | | | | end_key | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftState"></a> RaftState gives internal details about a Raft group's state. Closely mirrors the upstream definitions in github.com/etcd-io/raft. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replica_id | | | | | | hard_state | | | | | | lead | | | Lead is part of Raft's SoftState. | | | state | | | State is part of Raft's SoftState. It's not an enum because this is primarily for ui consumption and there are issues associated with them. | | | applied | | | | | | progress | | repeated | | | | lead_transferee | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftState.ProgressEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftState.Progress"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | match | | | | | | next | | | | | | state | | | | | | paused | | | | | | pending_snapshot | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RangeProblems"></a> RangeProblems describes issues reported by a range. For internal use only. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | unavailable | | | | | | leadernotlease_holder | | | | | | noraftleader | | | | | | underreplicated | | | | | | overreplicated | | | | | | no_lease | | | | | | quiescentequalsticking | | | Quiescent ranges do not tick by definition, but we track this in two different ways and suspect that they're getting out of sync. If the replica's quiescent flag doesn't agree with the store's list of replicas that are ticking, warn about it. | | | raftlogtoo_large | | | When the raft log is too large, it can be a symptom of other issues. | | | circuitbreakererror | | | | | | paused_followers | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RangeStatistics"></a> RangeStatistics describes statistics reported by a range. For internal use only. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | queriespersecond | | | Queries per second (batch requests) served by this range per second, averaged over the last 30 minute

| | | writespersecond | | | Writes per second served is the number of keys written to this range per second, averaged over the last 30 minute period. | | | requestspersecond | | | Requests per second is the number of requests served by this range per second, averaged over the last 30 minute period. | | | readspersecond | | | Reads per second served is the number of keys read from this range per second, averaged over the last 30 minute period. | | | writebytesper_second | | | Writes (bytes) per second is the number of bytes written to this range per second, averaged over the last 30 minute period. | | | readbytesper_second | | | Reads (bytes) per second is the number of bytes read from this range per second, averaged over the last 30 minute period. | | | cputimeper_second | | | CPU time (ns) per second is the cpu usage of this range per second, averaged over the last 30 minute period. | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RangeInfo.LockInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | pretty_key | | | | | | key | | | | | | held | | | | | | waiters | | | | | | waiting_readers | | | | | | waiting_writers | | | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.Locality"></a> Locality is an ordered set of key value Tiers that describe a node's location. The tier keys should be the same across all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tiers | | repeated | | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.Tier"></a> Tier represents one level of the locality hierarchy. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | Key is the name of tier and should match all other nodes. | | | value | | | Value is node specific value corresponding to the key. | | <a name="cockroach.server.serverpb.RaftDebugResponse-cockroach.server.serverpb.RaftRangeError"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | message | | | | | `GET /status/ranges/{nodeid}` Ranges requests internal details about ranges on a given node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | range_ids | | repeated | | | | limit | | | The pagination limit to use, if set. NB: Pagination is based on ascending RangeID. | | | offset | | | The pagination offset to use, if set. NB: Pagination is based on ascending RangeID. | | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | ranges | | repeated | | | | next | | | The next pagination offset to use, if any results remain. A value of 0 indicates no more results. NB: Pagination is based on ascending RangeID. | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | span | | | | | | raft_state | | | | | | state | | | | | | sourcenodeid | | | | | | sourcestoreid | | | | | | error_message | | | | | | lease_history | | repeated | | | | problems | | | | | | stats | | | | | | lease_status | | | | | | quiescent | | | | | | ticking | | | | | | read_latches | | | | | | write_latches | | | | | | locks | | | | | | lockswithwait_queues | | | | | | lockwaitqueue_waiters | | | | | | topklocksbywaitqueuewaiters | | repeated | | | | locality | | | | | | is_leaseholder | | | | | | lease_valid | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.PrettySpan"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | start_key | | | | | | end_key | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.RaftState"></a> RaftState gives internal details about a Raft group's state. Closely mirrors the upstream definitions in github.com/etcd-io/raft. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replica_id | | | | | | hard_state | | | | | | lead | | | Lead is part of Raft's SoftState. | | | state | | | State is part of Raft's SoftState. It's not an enum because this is primarily for ui consumption and there are issues associated with them. | | | applied | | | | | | progress | | repeated | | | | lead_transferee | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.RaftState.ProgressEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.RaftState.Progress"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | match | | | | | | next | | | | | | state | | | | | | paused | | | | | | pending_snapshot | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.RangeProblems"></a> RangeProblems describes issues reported by a range. For internal use only. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | unavailable | | | | | | leadernotlease_holder | | | | | | noraftleader | | | | | | underreplicated | | | | | | overreplicated | | | | | | no_lease | | | | | | quiescentequalsticking | | | Quiescent ranges do not tick by definition, but we track this in two different ways and suspect that they're getting out of sync. If the replica's quiescent flag doesn't agree with the store's list of replicas that are ticking, warn about it. | | | raftlogtoo_large | | | When the raft log is too large, it can be a symptom of other issues. | | | circuitbreakererror | | | | | | paused_followers | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.RangeStatistics"></a> RangeStatistics describes statistics reported by a range. For internal use

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | queriespersecond | | | Queries per second (batch requests) served by this range per second, averaged over the last 30 minute period. | | | writespersecond | | | Writes per second served is the number of keys written to this range per second, averaged over the last 30 minute period. | | | requestspersecond | | | Requests per second is the number of requests served by this range per second, averaged over the last 30 minute period. | | | readspersecond | | | Reads per second served is the number of keys read from this range per second, averaged over the last 30 minute period. | | | writebytesper_second | | | Writes (bytes) per second is the number of bytes written to this range per second, averaged over the last 30 minute period. | | | readbytesper_second | | | Reads (bytes) per second is the number of bytes read from this range per second, averaged over the last 30 minute period. | | | cputimeper_second | | | CPU time (ns) per second is the cpu usage of this range per second, averaged over the last 30 minute period. | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.RangeInfo.LockInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | pretty_key | | | | | | key | | | | | | held | | | | | | waiters | | | | | | waiting_readers | | | | | | waiting_writers | | | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.Locality"></a> Locality is an ordered set of key value Tiers that describe a node's location. The tier keys should be the same across all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tiers | | repeated | | | <a name="cockroach.server.serverpb.RangesResponse-cockroach.server.serverpb.Tier"></a> Tier represents one level of the locality hierarchy. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | Key is the name of tier and should match all other nodes. | | | value | | | Value is node specific value corresponding to the key. | | `GET /status/tenantservice_status` TenantServiceStatus returns the current service and data state of the given tenant as known to the server orchestrator, which may differ from the database state. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | tenant_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statusbynode_id | | repeated | | | | errorsbynode_id | | repeated | | | <a name="cockroach.server.serverpb.TenantServiceStatusResponse-cockroach.server.serverpb.TenantServiceStatusResponse.StatusByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /status/tenantranges` TenantRanges requests internal details about all range replicas within the tenant's keyspace at the time the request is processed. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | limit | | | The pagination limit. This limit will be applied to each node, meaning that if a range is replicated 3 times, 3*limit elements will be returned. NB: Pagination here is based on ascending RangeID. | | | offset | | | The pagination offset. NB: Pagination here is based on ascending RangeID. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | rangesbylocality | | repeated | rangesbylocality maps each range replica to its specified availability zone, as defined within the replica's locality metadata (default key `az`). Replicas without the default available zone key set will fall under the `locality-unset` key. | | | next | | | The next offset, if pagination was used. NB: Pagination here is based on ascending RangeID. | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.TenantRangesResponse.RangesByLocalityEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.TenantRangesResponse.TenantRangeList"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | ranges | | repeated | | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.TenantRangeInfo"></a> TenantRangeInfo provides metadata about a specific range replica, where concepts not considered to be relevant within the tenant abstraction (e.g. NodeIDs) are omitted. Instead, Locality information is used to distinguish replicas. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | The ID of the Range. | | | span | | | The pretty-printed key span of the range. | | | locality | | | Any locality information associated with this specific replica. | | | is_leaseholder | | | Whether the range's specific replica is a leaseholder. | | | lease_valid | | | Whether the range's specific replica holds a valid lease. | | | range_stats | | | Statistics about the range replica, e.g. QPS, WPS. | | | mvccstats | | | MVCC stats about the range replica, e.g. livebytes. | | | read_latches | | | Read count as reported by the range replica's spanlatch.Manager. | | | write_latches | | | Write count as reported by the range replica's spanlatch.Manager. | | | locks | | | The number of locks as reported by the range replica's lockTable. | | | lockswithwait_queues | | | The number of locks with non-empty wait-queues as reported by the range replica's lockTable | | | lockwaitqueue_waiters | | | The aggregate number of waiters in wait-queues across all locks as reported by the range replica's lockTable | | | topklocksbywaitqueuewaiters | | repeated | The top-k locks with the most waiters (readers + writers) in their wait-queue, ordered in descending order. | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.PrettySpan"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | start_key | | | | | | end_key | | | | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.Locality"></a> Locality is an ordered set of key value Tiers that describe a node's

The tier keys should be the same across all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tiers | | repeated | | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.Tier"></a> Tier represents one level of the locality hierarchy. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | Key is the name of tier and should match all other nodes. | | | value | | | Value is node specific value corresponding to the key. | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.RangeStatistics"></a> RangeStatistics describes statistics reported by a range. For internal use only. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | queriespersecond | | | Queries per second (batch requests) served by this range per second, averaged over the last 30 minute period. | | | writespersecond | | | Writes per second served is the number of keys written to this range per second, averaged over the last 30 minute period. | | | requestspersecond | | | Requests per second is the number of requests served by this range per second, averaged over the last 30 minute period. | | | readspersecond | | | Reads per second served is the number of keys read from this range per second, averaged over the last 30 minute period. | | | writebytesper_second | | | Writes (bytes) per second is the number of bytes written to this range per second, averaged over the last 30 minute period. | | | readbytesper_second | | | Reads (bytes) per second is the number of bytes read from this range per second, averaged over the last 30 minute period. | | | cputimeper_second | | | CPU time (ns) per second is the cpu usage of this range per second, averaged over the last 30 minute period. | | <a name="cockroach.server.serverpb.TenantRangesResponse-cockroach.server.serverpb.TenantRangeInfo.LockInfo"></a> LockInfo provides metadata about the state of a single lock in the range replica's lockTable. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | pretty_key | | | The lock's key in pretty format. | | | key | | | The lock's key. | | | held | | | Is the lock actively held by a transaction, or just a reservation? | | | waiters | | | The number of waiters in the lock's wait queue. | | | waiting_readers | | | The number of waiting readers in the lock's wait queue. | | | waiting_writers | | | The number of waiting writers in the lock's wait queue. | | `GET /status/gossip/{nodeid}` Gossip retrieves gossip-level details about a given node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | redact | | | redact, if true, requests redaction of sensitive data away from the API response. | | `GET /status/enginestats/{nodeid}` EngineStats retrieves statistics about a storage

Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | stats | | repeated | | | <a name="cockroach.server.serverpb.EngineStatsResponse-cockroach.server.serverpb.EngineStatsInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | store_id | | | | | | tickersandhistograms | | | | | | engine_type | | | | | `GET /status/allocator/node/{nodeid}` Allocator retrieves statistics about the replica allocator. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | range_ids | | repeated | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | dry_runs | | repeated | | | <a name="cockroach.server.serverpb.AllocatorResponse-cockroach.server.serverpb.AllocatorDryRun"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | | | | events | | repeated | | | <a name="cockroach.server.serverpb.AllocatorResponse-cockroach.server.serverpb.TraceEvent"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | time | | | | | | message | | | | | `GET /status/allocator/range/{rangeid}` AllocatorRange retrieves statistics about the replica allocator given a specific range. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | The NodeID of the store whose dry run is returned. Only the leaseholder for a given range will do an allocator dry run for it. | | | dry_run | | | | | <a name="cockroach.server.serverpb.AllocatorRangeResponse-cockroach.server.serverpb.AllocatorDryRun"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | | | | events | | repeated | | | <a name="cockroach.server.serverpb.AllocatorRangeResponse-cockroach.server.serverpb.TraceEvent"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | time | | | | | | message | | | | | `GET /_status/sessions` ListSessions retrieves the SQL sessions across the entire cluster. Support status: Request object for ListSessions and ListLocalSessions. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | username | | | Username of the user making this request. The caller is responsible to normalize the username (= case fold and perform unicode NFC normalization). | | | excludeclosedsessions | | | Boolean to exclude closed sessions; if unspecified, defaults to false and closed sessions are included in the response. | | | includeinternal | | | Boolean to surface internal sessions in the response. Note that this param currently serves as an override for the cluster setting sql.stats.response.showinternal.enabled until #87200 is addressed, and setting this param to false is equivalent to setting the value to sql.stats.response.show_internal.enabled | | Response object for ListSessions and

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | sessions | | repeated | A list of sessions on this node or cluster. | | | errors | | repeated | Any errors that occurred during fan-out calls to other nodes. | | | internalappnameprefix | | | If set and non-empty, indicates the prefix to applicationname used for statements/queries issued internally by CockroachDB. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.Session"></a> Session represents one SQL session. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node where this session exists. | | | username | | | Username of the user for this session. | | | client_address | | | Connected client's IP address and port. | | | application_name | | | Application name specified by the client. | | | active_queries | | repeated | Queries in progress on this session. | | | start | | | Timestamp of session's start. | | | lastactivequery | | | SQL string of the last query executed on this session. | | | id | | | ID of the session (uint128 represented as raw bytes). | | | alloc_bytes | | | Number of currently allocated bytes in the session memory monitor. | | | maxallocbytes | | | High water mark of allocated bytes in the session memory monitor. | | | active_txn | | | Information about the txn in progress on this session. Nil if the session doesn't currently have a transaction. | | | lastactivequerynoconstants | | | The SQL statement fingerprint of the last query executed on this session, compatible with StatementStatisticsKey. | | | status | | | The session's status. | | | end | | | Timestamp of session's end. | | | numtxnsexecuted | | | Count of the number of transactions that have been opened on this session. This count includes transactions that are in progress. | | | txnfingerprintids | | repeated | List of transaction fingerprint IDs in this session. | | | totalactivetime | | | The session's total active time. | | | pgbackendpid | | | The numerical ID attached to the session which is used to mimic a Postgres backend PID for compatibility with the query cancellation protocol. Unlike in Postgres, this value does not correspond to a real process ID. | | | trace_id | | | The ID of the session's active trace. It will be 0 if tracing is off. | | | goroutine_id | | | The ID of the session's goroutine. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.ActiveQuery"></a> ActiveQuery represents a query in flight on some Session. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | ID of the query (uint128 presented as a hexadecimal string). | | | txn_id | | | The UUID of the transaction this query is running in. | | | sql | | | SQL query string specified by the user. | | | start | | | Start timestamp of this query. | | | is_distributed | | | True if this query is distributed. | | | phase | | | phase stores the current phase of execution for this query. | | | progress | | | progress is an estimate of the fraction of this query that has been

| | | sqlnoconstants | | | The SQL statement fingerprint, compatible with StatementStatisticsKey. | | | sql_summary | | | A summarized version of the sql query. | | | isfullscan | | | True if the query contains a full table or index scan. Note that this field is only valid if the query is in the EXECUTING phase. | | | elapsed_time | | | Time elapsed since this query started execution. | | | plan_gist | | | The compressed plan that can be converted back into the statement's logical plan. Empty if the statement is in the PREPARING state. | | | placeholders | | repeated | The placeholders if any. | | | database | | | The database the statement was executed on. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.TxnInfo"></a> TxnInfo represents an in flight user transaction on some Session. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | start | | | The start timestamp of the transaction. | | | txndescription | | | txndescription is a text description of the underlying kv.Txn, intended for troubleshooting purposes. | | | numstatementsexecuted | | | numstatementsexecuted is the number of statements that were executed so far on this transaction. | | | numretries | | | numretries is the number of times that this transaction was retried. | | | numautoretries | | | num_retries is the number of times that this transaction was automatically retried by the SQL executor. | | | deadline | | | The deadline by which the transaction must be committed. | | | implicit | | | implicit is true if this transaction was an implicit SQL transaction. | | | alloc_bytes | | | Number of currently allocated bytes in the txn memory monitor. | | | maxallocbytes | | | High water mark of allocated bytes in the txn memory monitor. | | | read_only | | | | | | is_historical | | | | | | priority | | | | | | qualityofservice | | | | | | lastautoretry_reason | | | Error message describing the cause for the txn's last automatic retry. | | | elapsed_time | | | Time elapsed since this transaction started execution. | | | isolation_level | | | The isolation level of the transaction. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.ListSessionsError"></a> An error wrapper object for ListSessionsResponse. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node that was being contacted when this error occurred | | | message | | | Error message. | | `GET /status/localsessions` ListLocalSessions retrieves the SQL sessions on this node. Support status: Request object for ListSessions and ListLocalSessions. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | username | | | Username of the user making this request. The caller is responsible to normalize the username (= case fold and perform unicode NFC normalization). | | | excludeclosedsessions | | | Boolean to exclude closed sessions; if unspecified, defaults to false and closed sessions are included in the response. | | | includeinternal | | | Boolean to surface internal sessions in the response. Note that this param currently serves as an override for the cluster setting sql.stats.response.showinternal.enabled

#87200 is addressed, and setting this param to false is equivalent to setting the value to sql.stats.response.show_internal.enabled | | Response object for ListSessions and ListLocalSessions. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | sessions | | repeated | A list of sessions on this node or cluster. | | | errors | | repeated | Any errors that occurred during fan-out calls to other nodes. | | | internalappnameprefix | | | If set and non-empty, indicates the prefix to applicationname used for statements/queries issued internally by CockroachDB. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.Session"></a> Session represents one SQL session. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node where this session exists. | | | username | | | Username of the user for this session. | | | client_address | | | Connected client's IP address and port. | | | application_name | | | Application name specified by the client. | | | active_queries | | repeated | Queries in progress on this session. | | | start | | | Timestamp of session's start. | | | lastactivequery | | | SQL string of the last query executed on this session. | | | id | | | ID of the session (uint128 represented as raw bytes). | | | alloc_bytes | | | Number of currently allocated bytes in the session memory monitor. | | | maxallocbytes | | | High water mark of allocated bytes in the session memory monitor. | | | active_txn | | | Information about the txn in progress on this session. Nil if the session doesn't currently have a transaction. | | | lastactivequerynoconstants | | | The SQL statement fingerprint of the last query executed on this session, compatible with StatementStatisticsKey. | | | status | | | The session's status. | | | end | | | Timestamp of session's end. | | | numtxnsexecuted | | | Count of the number of transactions that have been opened on this session. This count includes transactions that are in progress. | | | txnfingerprintids | | repeated | List of transaction fingerprint IDs in this session. | | | totalactivetime | | | The session's total active time. | | | pgbackendpid | | | The numerical ID attached to the session which is used to mimic a Postgres backend PID for compatibility with the query cancellation protocol. Unlike in Postgres, this value does not correspond to a real process ID. | | | trace_id | | | The ID of the session's active trace. It will be 0 if tracing is off. | | | goroutine_id | | | The ID of the session's goroutine. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.ActiveQuery"></a> ActiveQuery represents a query in flight on some Session. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | ID of the query (uint128 presented as a hexadecimal string). | | | txn_id | | | The UUID of the transaction this query is running in. | | | sql | | | SQL query string specified by the user. | | | start | | | Start timestamp of this query. | | | is_distributed | | | True if this query is

| | | phase | | | phase stores the current phase of execution for this query. | | | progress | | | progress is an estimate of the fraction of this query that has been processed. | | | sqlnoconstants | | | The SQL statement fingerprint, compatible with StatementStatisticsKey. | | | sql_summary | | | A summarized version of the sql query. | | | isfullscan | | | True if the query contains a full table or index scan. Note that this field is only valid if the query is in the EXECUTING phase. | | | elapsed_time | | | Time elapsed since this query started execution. | | | plan_gist | | | The compressed plan that can be converted back into the statement's logical plan. Empty if the statement is in the PREPARING state. | | | placeholders | | repeated | The placeholders if any. | | | database | | | The database the statement was executed on. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.TxnInfo"></a> TxnInfo represents an in flight user transaction on some Session. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | start | | | The start timestamp of the transaction. | | | txndescription | | | txndescription is a text description of the underlying kv.Txn, intended for troubleshooting purposes. | | | numstatementsexecuted | | | numstatementsexecuted is the number of statements that were executed so far on this transaction. | | | numretries | | | numretries is the number of times that this transaction was retried. | | | numautoretries | | | num_retries is the number of times that this transaction was automatically retried by the SQL executor. | | | deadline | | | The deadline by which the transaction must be committed. | | | implicit | | | implicit is true if this transaction was an implicit SQL transaction. | | | alloc_bytes | | | Number of currently allocated bytes in the txn memory monitor. | | | maxallocbytes | | | High water mark of allocated bytes in the txn memory monitor. | | | read_only | | | | | | is_historical | | | | | | priority | | | | | | qualityofservice | | | | | | lastautoretry_reason | | | Error message describing the cause for the txn's last automatic retry. | | | elapsed_time | | | Time elapsed since this transaction started execution. | | | isolation_level | | | The isolation level of the transaction. | | <a name="cockroach.server.serverpb.ListSessionsResponse-cockroach.server.serverpb.ListSessionsError"></a> An error wrapper object for ListSessionsResponse. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node that was being contacted when this error occurred | | | message | | | Error message. | | `POST /status/cancelquery/{node_id}` CancelQuery cancels a SQL query given its ID. Support status: Request object for issuing a query cancel request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of gateway node for the query to be canceled.<br><br>TODO(itsbilal): use | | query_id | | | ID of query to be canceled (converted to string). | | | username | | | Username of the user making this cancellation

This may be omitted if the user is the same as the one issuing the CancelQueryRequest. The caller is responsible for case-folding and NFC normalization. | | Response returned by target query's gateway node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | canceled | | | Whether the cancellation request succeeded and the query was canceled. | | | error | | | Error message (accompanied with canceled = false). | | CancelQueryByKey cancels a SQL query given its pgwire BackendKeyData. It is invoked through the pgwire protocol, so it's not exposed as an HTTP endpoint. Support status: Request object for issuing a pgwire query cancel request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | sqlinstanceid | | | The SQLInstanceID of the gateway node for the query to be canceled. | | | cancelquerykey | | | The key that was generated during session initialization as part of the pgwire protocol. | | Response returned by target query's gateway node for a pgwire cancel request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | canceled | | | Whether the cancellation request succeeded and the query was canceled. | | | error | | | Error message (accompanied with canceled = false). | | `GET /status/contentionevents` ListContentionEvents retrieves the contention events across the entire cluster. For SQL keys the following orderings are maintained: on the highest level, all IndexContentionEvents objects are ordered according to their importance (as defined by the number of contention events within each object). on the middle level, all SingleKeyContention objects are ordered by their keys lexicographically. on the lowest level, all SingleTxnContention objects are ordered by the number of times that transaction was observed to contend with other transactions. For non-SQL keys the following orderings are maintained: on the top level, all SingleNonSQLKeyContention objects are ordered by their keys lexicographically. on the bottom level, all SingleTxnContention objects are ordered by the number of times that transaction was observed to contend with other transactions. Support status: Request object for ListContentionEvents and ListLocalContentionEvents. Response object for ListContentionEvents and ListLocalContentionEvents. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | events | | | All available contention information on this node or cluster. | | | errors | | repeated | Any errors that occurred during fan-out calls to other nodes. | | <a name="cockroach.server.serverpb.ListContentionEventsResponse-cockroach.server.serverpb.ListActivityError"></a> An error wrapper object for ListContentionEventsResponse and ListDistSQLFlowsResponse. Similar to the Statements endpoint, when implemented on a tenant, the `node_id` field refers to the instanceIDs that identify individual tenant pods. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node that was being contacted when this error occurred. | | | message | | | Error message. | | `GET /status/localcontention_events` ListLocalContentionEvents retrieves the contention events on this node. For SQL keys the following orderings are maintained: on the highest level, all IndexContentionEvents objects are ordered according to their importance (as defined by the number of contention events within each object). on the middle level, all SingleKeyContention objects are ordered by their keys

on the lowest level, all SingleTxnContention objects are ordered by the number of times that transaction was observed to contend with other transactions. For non-SQL keys the following orderings are maintained: on the top level, all SingleNonSQLKeyContention objects are ordered by their keys lexicographically. on the bottom level, all SingleTxnContention objects are ordered by the number of times that transaction was observed to contend with other transactions. Support status: Request object for ListContentionEvents and ListLocalContentionEvents. Response object for ListContentionEvents and ListLocalContentionEvents. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | events | | | All available contention information on this node or cluster. | | | errors | | repeated | Any errors that occurred during fan-out calls to other nodes. | | <a name="cockroach.server.serverpb.ListContentionEventsResponse-cockroach.server.serverpb.ListActivityError"></a> An error wrapper object for ListContentionEventsResponse and ListDistSQLFlowsResponse. Similar to the Statements endpoint, when implemented on a tenant, the `node_id` field refers to the instanceIDs that identify individual tenant pods. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node that was being contacted when this error occurred. | | | message | | | Error message. | | `GET /status/distsqlflows` ListDistSQLFlows retrieves all of the remote flows of the DistSQL execution that are currently running or queued on any node in the cluster. The local flows (those that are running on the same node as the query originated on) are not included. Flows are ordered lexicographically by the flow ID. Support status: Request object for ListDistSQLFlows and ListLocalDistSQLFlows. Response object for ListDistSQLFlows and ListLocalDistSQLFlows. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | flows | | repeated | Flows are ordered by FlowID lexicographically and do not contain duplicates. | | | errors | | repeated | Any errors that occurred during fan-out calls to other nodes. | | <a name="cockroach.server.serverpb.ListDistSQLFlowsResponse-cockroach.server.serverpb.DistSQLRemoteFlows"></a> DistSQLRemoteFlows describes all DistSQL remote flows that are part of the same physical plan. The gateway node that initiated the execution of the plan isn't included. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | flow_id | | | FlowID is the unique identifier of the physical plan shared by all remote flows. | | | infos | | repeated | Infos contains the information about all remote flows that are part of this DistSQL physical plan and that haven't finished yet.<br><br>The slice doesn't contain duplicate NodeIDs and is sorted by NodeID in ASC order. | | <a name="cockroach.server.serverpb.ListDistSQLFlowsResponse-cockroach.server.serverpb.DistSQLRemoteFlows.Info"></a> Info contains an information about a single DistSQL remote flow. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID is the node on which this remote flow is either running or queued. | | | timestamp | | | Timestamp must be in the UTC timezone. | | | stmt | | | Stmt is the SQL statement for which this flow is executing. | | <a name="cockroach.server.serverpb.ListDistSQLFlowsResponse-cockroach.server.serverpb.ListActivityError"></a> An error wrapper object for ListContentionEventsResponse and ListDistSQLFlowsResponse. Similar to the Statements endpoint, when implemented on a tenant, the `node_id` field refers to the instanceIDs that identify individual tenant

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node that was being contacted when this error occurred. | | | message | | | Error message. | | `GET /status/localdistsql_flows` ListLocalDistSQLFlows retrieves all of the remote flows of the DistSQL execution that are currently running or queued on this node in the cluster. Queries that originated on this node are not be included. Flows are ordered lexicographically by the flow ID. Support status: Request object for ListDistSQLFlows and ListLocalDistSQLFlows. Response object for ListDistSQLFlows and ListLocalDistSQLFlows. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | flows | | repeated | Flows are ordered by FlowID lexicographically and do not contain duplicates. | | | errors | | repeated | Any errors that occurred during fan-out calls to other nodes. | | <a name="cockroach.server.serverpb.ListDistSQLFlowsResponse-cockroach.server.serverpb.DistSQLRemoteFlows"></a> DistSQLRemoteFlows describes all DistSQL remote flows that are part of the same physical plan. The gateway node that initiated the execution of the plan isn't included. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | flow_id | | | FlowID is the unique identifier of the physical plan shared by all remote flows. | | | infos | | repeated | Infos contains the information about all remote flows that are part of this DistSQL physical plan and that haven't finished yet.<br><br>The slice doesn't contain duplicate NodeIDs and is sorted by NodeID in ASC order. | | <a name="cockroach.server.serverpb.ListDistSQLFlowsResponse-cockroach.server.serverpb.DistSQLRemoteFlows.Info"></a> Info contains an information about a single DistSQL remote flow. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID is the node on which this remote flow is either running or queued. | | | timestamp | | | Timestamp must be in the UTC timezone. | | | stmt | | | Stmt is the SQL statement for which this flow is executing. | | <a name="cockroach.server.serverpb.ListDistSQLFlowsResponse-cockroach.server.serverpb.ListActivityError"></a> An error wrapper object for ListContentionEventsResponse and ListDistSQLFlowsResponse. Similar to the Statements endpoint, when implemented on a tenant, the `node_id` field refers to the instanceIDs that identify individual tenant pods. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | ID of node that was being contacted when this error occurred. | | | message | | | Error message. | | `POST /status/cancelsession/{node_id}` CancelSessions forcefully terminates a SQL session given its ID. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | TODO(abhimadan): use | | session_id | | | | | | username | | | Username of the user making this cancellation request. This may be omitted if the user is the same as the one issuing the CancelSessionRequest. The caller is responsible for case-folding and NFC normalization. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | canceled | | | | | | error | | | | | `POST /_status/span` SpanStats accepts a key span and node ID, and returns a set of stats summed from all ranges on the stores on that node which contain keys in that

This is designed to compute stats specific to a SQL table: it will be called with the highest/lowest key for a SQL table, and return information about the resources on a node used by that table. Support status: `POST /status/criticalnodes` CriticalNodes retrieves nodes that are considered critical. A critical node is one whose unexpected termination could result in data loss. A node is considered critical if any of its replicas are unavailable or under-replicated. The response includes a list of node descriptors that are considered critical, and the corresponding SpanConfigConformanceReport that includes details of non-conforming ranges contributing to the criticality. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | critical_nodes | | repeated | | | | report | | | | | `GET /status/stacks/{nodeid}` Stacks retrieves the stack traces of all goroutines on a given node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. node_id translates to a KV node ID on a storage server and SQL instance ID on a SQL only server. | | | type | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | data | | | | | `GET /status/profile/{nodeid}` Profile retrieves a CPU profile on a given node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" or "all" can be used to specify that no forwarding is necessary. node_id translates to a KV node ID on a storage server and SQL instance ID on a SQL only server. | | | type | | | The type of profile to retrieve. | | | seconds | | | applies only to Type=CPU, defaults to 30 | | | labels | | | Labels can be specified for Type=CPU or Type=GOROUTINE.<br><br>- If true for CPU profiles, we request a CPU profile with pprof labels.<br><br>- If true for GOROUTINE profiles, we request an aggregated goroutine profile with debug=1. | | | label_filter | | | LabelFilter only applies to Type=GOROUTINE. Only goroutines with a pprof label matching the filter will be returned. | | | senderserverversion | | | SenderServerVersion is the server version of the node sending the Profile request. If this field is set then the node processing the request will only collect the profile if its server version is equal to the sender's server version.<br><br>Currently, this is only used when collecting profiles that will be merged using pprof.Merge as all the samples must be from the same binary version. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | data | | | | | `GET /status/metrics/{nodeid}` Metrics retrieves the node metrics for a given node. Note: this is a reserved API and should not be relied upon to build external tools. No guarantee is made about its availability and stability in external

Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | data | | | | | `GET /status/files/{nodeid}` GetFiles retrieves heap or goroutine dump files from a given node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. node_id translates to a KV node ID on a storage server and SQL instance ID on a SQL only server. | | | listonly | | | If listonly is true then the contents of the files will not be populated in the response. Only filenames and sizes will be returned. | | | type | | | | | | patterns | | repeated | Each pattern given is matched with Files of the above type in the node using filepath.Glob(). The patterns only match to filenames and so path separators cannot be used. Example: * will match all files of requested type. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | files | | repeated | | | <a name="cockroach.server.serverpb.GetFilesResponse-cockroach.server.serverpb.File"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | name | | | | | | file_size | | | | | | contents | | | Contents may not be populated if only a list of Files are requested. | | `GET /status/logfiles/{nodeid}` LogFilesList retrieves a list of log files on a given node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | files | | repeated | files is the list of log files under this node's configured logging directories. Note that the response does not contain detail about which directory contains which file. The location of each file is known to the server based on its name and the logging configuration. | | `GET /status/logfiles/{nodeid}/{file}` LogFile retrieves a given log file. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | file | | | file is the name of the log file to retrieve. Note that it must not be prefixed by a directory name. The full path to the file is computed by the server based on the base name and the logging configuration. | | | redact | | | redact, if true, requests redaction of sensitive data away from the retrieved log entries. Only admin users can send a request with redact =

| | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | entries | | repeated | | | | parseerrors | | repeated | parseerrors contains list of errors that occurred during retrieving individual log entries that don't prevent to return at least partial response. | | `GET /status/logs/{nodeid}` Logs retrieves individual log entries. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | level | | | | | | start_time | | | | | | end_time | | | | | | max | | | | | | pattern | | | | | | redact | | | redact, if true, requests redaction of sensitive data away from the retrieved log entries. Only admin users can send a request with redact = false. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | entries | | repeated | | | | parseerrors | | repeated | parseerrors contains list of errors that occurred during retrieving individual log entries that don't prevent to return at least partial response. | | `GET /_status/problemranges` ProblemRanges retrieves the list of problem ranges. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | If left empty, problem ranges for all nodes/stores will be returned. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID is the node that submitted all the requests. | | | problemsbynode_id | | repeated | | | <a name="cockroach.server.serverpb.ProblemRangesResponse-cockroach.server.serverpb.ProblemRangesResponse.ProblemsByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.ProblemRangesResponse-cockroach.server.serverpb.ProblemRangesResponse.NodeProblems"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | error_message | | | | | | unavailablerangeids | | repeated | | | | raftleadernotleaseholderrangeids | | repeated | | | | noraftleaderrangeids | | repeated | | | | noleaserange_ids | | repeated | | | | underreplicatedrangeids | | repeated | | | | overreplicatedrangeids | | repeated | | | | quiescentequalstickingrangeids | | repeated | | | | raftlogtoolargerange_ids | | repeated | | | | circuitbreakererrorrangeids | | repeated | | | | pausedreplicaids | | repeated | | | `GET /_status/downloadspans` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | spans | | repeated | | | | viabackingfile_download | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | errorsbynode_id | | repeated | ErrorsByNodeID contains any errors that occurred during fan-out calls to other nodes. | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /_status/hotranges` Support status: HotRangesRequest queries one or more cluster nodes for a list of ranges currently considered hot by the node(s). | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID indicates which node to query for a hot range report. It is possible to populate any node ID; if the node receiving the request is not the target node, it will forward the request to the target node.<br><br>If left empty, the request is forwarded to every node in the cluster. | | | page_size | | | | | | page_token | | | | | | tenant_id | | | | | HotRangesResponse is the payload produced in response to a HotRangesRequest. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID is the node that received the HotRangesRequest and forwarded requests to the selected target node(s). | | | hotrangesbynodeid | | repeated | HotRangesByNodeID contains a hot range report for each selected target node ID in the HotRangesRequest. | | <a name="cockroach.server.serverpb.HotRangesResponse-cockroach.server.serverpb.HotRangesResponse.HotRangesByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.HotRangesResponse-cockroach.server.serverpb.HotRangesResponse.NodeResponse"></a> NodeResponse is a hot range report for a single target node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | error_message | | | ErrorMessage is set to a non-empty string if this target node was unable to produce a hot range report.<br><br>The contents of this string indicates the cause of the failure. | | | stores | | repeated | Stores contains the hot ranges report if no error was encountered. There is one part to the report for each store in the target node. | | <a name="cockroach.server.serverpb.HotRangesResponse-cockroach.server.serverpb.HotRangesResponse.StoreResponse"></a> StoreResponse contains the part of a hot ranges report that pertains to a single store on a target node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | store_id | | | StoreID identifies the store for which the report was produced. | | | hot_ranges | | repeated | HotRanges is the hot ranges report for this store on the target node. | | <a name="cockroach.server.serverpb.HotRangesResponse-cockroach.server.serverpb.HotRangesResponse.HotRange"></a> HotRange is a hot range report for a single store on one of the target node(s) selected in a HotRangesRequest. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | desc | | | Desc is the descriptor of the range for which the report was produced.<br><br>TODO(knz): This field should be removed. See: https://github.com/cockroachdb/cockroach/issues/53212 | | | queriespersecond | | | QueriesPerSecond is the recent number of queries per second on this range. | | | leaseholdernodeid | | | LeaseholderNodeID indicates the Node ID that is the current leaseholder for the given range. | | | requestspersecond | | | Requests per second is the recent number of requests received per second on this range. | | | writespersecond | | | Writes per second is the recent number of keys written per second on this

| | | readspersecond | | | Reads per second is the recent number of keys read per second on this range. | | | writebytesper_second | | | Write bytes per second is the recent number of bytes written per second on this range. | | | readbytesper_second | | | Read bytes per second is the recent number of bytes read per second on this range. | | | cputimeper_second | | | CPU time per second is the recent cpu usage in nanoseconds of this range. | | `POST /_status/v2/hotranges` Support status: HotRangesRequest queries one or more cluster nodes for a list of ranges currently considered hot by the node(s). | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID indicates which node to query for a hot range report. It is possible to populate any node ID; if the node receiving the request is not the target node, it will forward the request to the target node.<br><br>If left empty, the request is forwarded to every node in the cluster. | | | page_size | | | | | | page_token | | | | | | tenant_id | | | | | HotRangesResponseV2 is a response payload returned by `HotRangesV2` service. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | ranges | | repeated | Ranges contain list of hot ranges info that has highest number of QPS. | | | errorsbynode_id | | repeated | errors contains any errors that occurred during fan-out calls to other nodes. | | | nextpagetoken | | | NextPageToken represents next pagination token to request next slice of data. | | <a name="cockroach.server.serverpb.HotRangesResponseV2-cockroach.server.serverpb.HotRangesResponseV2.HotRange"></a> HotRange message describes a single hot range, ie its QPS, node ID it belongs to, etc. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | rangeid | | | rangeid indicates Range ID that's identified as hot range. | | | nodeid | | | nodeid indicates the node that contains the current hot range. | | | qps | | | qps (queries per second) shows the amount of queries that interact with current range. | | | tablename | | | tablename indicates the SQL table that the range belongs to. | | | databasename | | | databasename indicates on database that has current hot range. | | | indexname | | | indexname indicates the index name for current range. | | | replicanodeids | | repeated | replicanodeids specifies the list of node ids that contain replicas with current hot range. | | | leaseholdernodeid | | | leaseholdernodeid indicates the Node ID that is the current leaseholder for the given range. | | | schemaname | | | schemaname provides the name of schema (if exists) for table in current range. | | | storeid | | | storeid indicates the Store ID where range is stored. | | | writespersecond | | | writespersecond is the recent number of keys written per second on this range. | | | readspersecond | | | readspersecond is the recent number of keys read per second on this range. | | | writebytespersecond | | | writebytespersecond is the recent number of bytes written per second on this

| | | readbytespersecond | | | readbytespersecond is the recent number of bytes read per second on this range. | | | cputimeper_second | | | CPU time (ns) per second is the recent cpu usage per second on this range. | | <a name="cockroach.server.serverpb.HotRangesResponseV2-cockroach.server.serverpb.HotRangesResponseV2.ErrorsByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `POST /_status/keyvissamples` Support status: KeyVisSamplesResponse returns a space-efficient representation of key visualizer samples. Spans are deduplicated, and are referenced by uuid. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | prettykeyforuuid | | repeated | prettykeyforuuid is a mapping of hex-encoded UUIDs to pretty keys. | | | sortedprettykeys | | repeated | | | | samples | | repeated | | | <a name="cockroach.server.serverpb.KeyVisSamplesResponse-cockroach.server.serverpb.KeyVisSamplesResponse.PrettyKeyForUuidEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.KeyVisSamplesResponse-cockroach.server.serverpb.KeyVisSamplesResponse.KeyVisSample"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | timestamp | | | | | | buckets | | repeated | | | <a name="cockroach.server.serverpb.KeyVisSamplesResponse-cockroach.server.serverpb.KeyVisSamplesResponse.Bucket"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | startkeyid | | | | | | endkeyid | | | | | | requests | | | | | `GET /status/range/{rangeid}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | NodeID is the node that submitted all the requests. | | | range_id | | | | | | responsesbynode_id | | repeated | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RangeResponse.ResponsesByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RangeResponse.NodeResponse"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | response | | | | | | error_message | | | | | | infos | | repeated | | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | span | | | | | | raft_state | | | | | | state | | | | | | sourcenodeid | | | | | | sourcestoreid | | | | | | error_message | | | | | | lease_history | | repeated | | | | problems | | | | | | stats | | | | | | lease_status | | | | | | quiescent | | | | | | ticking | | | | | | read_latches | | | | | | write_latches | | | | | | locks | | | | | | lockswithwait_queues | | | | | | lockwaitqueue_waiters | | | | | | topklocksbywaitqueuewaiters | | repeated | | | | locality | | | | | | is_leaseholder | | | | | | lease_valid | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.PrettySpan"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | start_key | | | | | | end_key | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RaftState"></a> RaftState gives internal details about a Raft group's state. Closely mirrors the upstream definitions in github.com/etcd-io/raft. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replica_id | | | | | | hard_state | | | | | | lead | | | Lead is part of Raft's SoftState. | | | state | | | State is part of Raft's SoftState. It's not an enum because this is primarily for ui consumption and there are issues associated with them. | | | applied | | | | | | progress | | repeated | | | | lead_transferee | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RaftState.ProgressEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RaftState.Progress"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | match | | | | | | next | | | | | | state | | | | | | paused | | | | | | pending_snapshot | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RangeProblems"></a> RangeProblems describes issues reported by a range. For internal use only. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | unavailable | | | | | | leadernotlease_holder | | | | | | noraftleader | | | | | | underreplicated | | | | | | overreplicated | | | | | | no_lease | | | | | | quiescentequalsticking | | | Quiescent ranges do not tick by definition, but we track this in two different ways and suspect that they're getting out of sync. If the replica's quiescent flag doesn't agree with the store's list of replicas that are ticking, warn about it. | | | raftlogtoo_large | | | When the raft log is too large, it can be a symptom of other issues. | | | circuitbreakererror | | | | | | paused_followers | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RangeStatistics"></a> RangeStatistics describes statistics reported by a range. For internal use only. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | queriespersecond | | | Queries per second (batch requests) served by this range per second, averaged over the last 30 minute period. | | | writespersecond | | | Writes per second served is the number of keys written to this range per second, averaged over the last 30 minute period. | | | requestspersecond | | | Requests per second is the number of requests served by this range per second, averaged over the last 30 minute period. | | | readspersecond | | | Reads per second served is the number of keys read from this range per second, averaged over the last 30 minute

| | | writebytesper_second | | | Writes (bytes) per second is the number of bytes written to this range per second, averaged over the last 30 minute period. | | | readbytesper_second | | | Reads (bytes) per second is the number of bytes read from this range per second, averaged over the last 30 minute period. | | | cputimeper_second | | | CPU time (ns) per second is the cpu usage of this range per second, averaged over the last 30 minute period. | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.RangeInfo.LockInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | pretty_key | | | | | | key | | | | | | held | | | | | | waiters | | | | | | waiting_readers | | | | | | waiting_writers | | | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.Locality"></a> Locality is an ordered set of key value Tiers that describe a node's location. The tier keys should be the same across all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tiers | | repeated | | | <a name="cockroach.server.serverpb.RangeResponse-cockroach.server.serverpb.Tier"></a> Tier represents one level of the locality hierarchy. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | Key is the name of tier and should match all other nodes. | | | value | | | Value is node specific value corresponding to the key. | | `GET /status/diagnostics/{nodeid}` Support status: DiagnosticsRequest requests a diagnostics report. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | `GET /status/stores/{nodeid}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | stores | | repeated | | | <a name="cockroach.server.serverpb.StoresResponse-cockroach.server.serverpb.StoreDetails"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | store_id | | | | | | node_id | | | | | | encryptionstatus | | | encryptionstatus is a serialized ccl/storageccl/engineccl/enginepbccl/stats.go::EncryptionStatus protobuf. | | | total_files | | | Basic file stats when encryption is enabled. Total files/bytes. | | | total_bytes | | | | | | activekeyfiles | | | Files/bytes using the active data key. | | | activekeybytes | | | | | | dir | | | dir is the path to the store's data directory on the node. | | | walfailoverpath | | | walfailoverpath encodes the path to the secondary WAL directory used for failover in the event of high write latency to the primary WAL. | | `GET /_status/statements` Support status: StatementsRequest is used by both tenant and node-level implementations to serve fan-out requests across multiple nodes or instances. When implemented on a node, the `node_id` field refers to the cluster nodes by their

When implemented on a tenant, the `node_id` field refers to the instanceIDs that identify individual tenant pods. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | combined | | | If this field is set we will use the combined statements API instead. | | | start | | | These fields are used for the combined statements API. | | | end | | | | | | fetch_mode | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statements | | repeated | | | | last_reset | | | Timestamp of the last stats reset. | | | internalappnameprefix | | | If set and non-empty, indicates the prefix to applicationname used for statements/queries issued internally by CockroachDB. | | | transactions | | repeated | Transactions is transaction-level statistics for the collection of statements in this response. | | | stmtstotalruntime_secs | | | | | | txnstotalruntime_secs | | | | | | oldestaggregatedts_returned | | | OldestAggregatedTsReturned is the timestamp of the oldest entry returned, or null if there is no data returned. | | | stmtssourcetable | | | StmtsSourceTable returns the table used to return the statements data. | | | txnssourcetable | | | TxnsSourceTable returns the table used to return the transactions data. | | <a name="cockroach.server.serverpb.StatementsResponse-cockroach.server.serverpb.StatementsResponse.CollectedStatementStatistics"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | id | | | | | | stats | | | | | | txnfingerprintids | | repeated | In 23.1 we expect the response to only group on fingerprintid and appname in the overview page. We now return the aggregated list of unique txn fingerprint ids, leaving the txnfingerprintid field in the key empty. | | <a name="cockroach.server.serverpb.StatementsResponse-cockroach.server.serverpb.StatementsResponse.ExtendedStatementStatisticsKey"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key_data | | | | | | node_id | | | | | | aggregated_ts | | | | | | aggregation_interval | | | The aggregation duration. | | <a name="cockroach.server.serverpb.StatementsResponse-cockroach.server.serverpb.StatementsResponse.ExtendedCollectedTransactionStatistics"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | stats_data | | | | | | node_id | | | | | `GET /_status/combinedstmts` Retrieve the combined in-memory and persisted statement stats by date range. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | start | | | Unix time range for aggregated statements. | | | end | | | | | | fetchmode | | | Note that if fetchmode is set to transactions only, we will also include the statement statistics for the stmts in the transactions response. This is more of a hack-y method to get the complete stats for txns, because in the client we need to fill in some txn stats info from its stmt stats, such as the query string.<br><br>We prefer this hackier method right now to reduce surface area for backporting these changes, but in the future we will introduce more endpoints to properly organize these differing

TODO (xinhaoz) - Split this API into stmts and txns properly instead of using this param. | | | limit | | | | | <a name="cockroach.server.serverpb.CombinedStatementsStatsRequest-cockroach.server.serverpb.CombinedStatementsStatsRequest.FetchMode"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | stats_type | | | | | | sort | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statements | | repeated | | | | last_reset | | | Timestamp of the last stats reset. | | | internalappnameprefix | | | If set and non-empty, indicates the prefix to applicationname used for statements/queries issued internally by CockroachDB. | | | transactions | | repeated | Transactions is transaction-level statistics for the collection of statements in this response. | | | stmtstotalruntime_secs | | | | | | txnstotalruntime_secs | | | | | | oldestaggregatedts_returned | | | OldestAggregatedTsReturned is the timestamp of the oldest entry returned, or null if there is no data returned. | | | stmtssourcetable | | | StmtsSourceTable returns the table used to return the statements data. | | | txnssourcetable | | | TxnsSourceTable returns the table used to return the transactions data. | | <a name="cockroach.server.serverpb.StatementsResponse-cockroach.server.serverpb.StatementsResponse.CollectedStatementStatistics"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | id | | | | | | stats | | | | | | txnfingerprintids | | repeated | In 23.1 we expect the response to only group on fingerprintid and appname in the overview page. We now return the aggregated list of unique txn fingerprint ids, leaving the txnfingerprintid field in the key empty. | | <a name="cockroach.server.serverpb.StatementsResponse-cockroach.server.serverpb.StatementsResponse.ExtendedStatementStatisticsKey"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key_data | | | | | | node_id | | | | | | aggregated_ts | | | | | | aggregation_interval | | | The aggregation duration. | | <a name="cockroach.server.serverpb.StatementsResponse-cockroach.server.serverpb.StatementsResponse.ExtendedCollectedTransactionStatistics"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | stats_data | | | | | | node_id | | | | | `GET /status/stmtdetails/{fingerprintid}` Support status: StatementDetailsRequest requests the details of a Statement, based on its keys. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | fingerprintid | | | fingerprintid is generated by ConstructStatementFingerprintID using: query, failed, implicitTxn and database. So we don't need to add them to the request. | | | app_names | | repeated | | | | start | | | Unix time range for aggregated statements. | | | end | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statement | | | statement returns the total statistics for the statement. | | | statementstatisticsperaggregatedts | | repeated | statementstatisticsperaggregatedts returns the same statement from above, but with its statistics separated by the aggregated timestamp. | | | statementstatisticsperplanhash | | repeated | statementstatisticsperplanhash returns the same statement from above, but with its statistics separated by the plan

| | | internalappnameprefix | | | If set and non-empty, indicates the prefix to applicationname used for statements/queries issued internally by CockroachDB. | | <a name="cockroach.server.serverpb.StatementDetailsResponse-cockroach.server.serverpb.StatementDetailsResponse.CollectedStatementSummary"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | metadata | | | | | | stats | | | | | | aggregation_interval | | | | | <a name="cockroach.server.serverpb.StatementDetailsResponse-cockroach.server.serverpb.StatementDetailsResponse.CollectedStatementGroupedByAggregatedTs"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | metadata | | | | | | stats | | | | | | aggregation_interval | | | | | | aggregated_ts | | | | | <a name="cockroach.server.serverpb.StatementDetailsResponse-cockroach.server.serverpb.StatementDetailsResponse.CollectedStatementGroupedByPlanHash"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | metadata | | | | | | stats | | | | | | aggregation_interval | | | | | | explain_plan | | | | | | plan_hash | | | | | | index_recommendations | | repeated | | | `POST /_status/stmtdiagreports` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statement_fingerprint | | | | | | minexecutionlatency | | | MinExecutionLatency, when non-zero, indicates the minimum execution latency of a query for which to collect the diagnostics report. In other words, if a query executes faster than this threshold, then the diagnostics report is not collected on it, and we will try to get a bundle the next time we see the query fingerprint.<br><br>NB: if MinExecutionLatency is non-zero, then all queries that match the fingerprint will be traced until a slow enough query comes along. This tracing might have some performance overhead. | | | expires_after | | | ExpiresAfter, when non-zero, sets the expiration interval of this request. | | | sampling_probability | | | SamplingProbability controls how likely we are to try and collect a diagnostics report for a given execution. The semantics with MinExecutionLatency are worth noting (and perhaps simplifying?): - If SamplingProbability is zero, we're always sampling. This is for compatibility with pre-22.2 versions where this parameter was not available. - If SamplingProbability is non-zero, MinExecutionLatency must be non-zero. We'll sample stmt executions with the given probability until: (a) we capture one that exceeds MinExecutionLatency, or (b) we hit the ExpiresAfter point.<br><br>SamplingProbability lets users control at a per-stmt granularity how much collection overhead is acceptable to try an capture an outlier execution for further analysis (are high p99.9s due to latch waits? racing with split transfers?). A high sampling rate can capture a trace sooner, but the added overhead may also cause the trace to be non-representative if the tracing overhead across all requests is causing resource saturation (network, memory) and resulting in slowdown.<br><br>TODO(irfansharif): Wire this up to the UI code. When selecting the latency threshold, we should want to force specifying a sampling probability.<br><br>TODO(irfansharif): We could do better than a hard-coded default value for probability (100% could be too high-overhead so probably not the right one). Strawman: could consider the recent request rate for the fingerprint (say averaged over the last 10m? 30m?), consider what %-ile the latency target we're looking to capture is under, and suggest a sampling probability that gets you at least one trace in the next T seconds with 95% likelihood? Or provide a hint for how long T is for the currently chosen sampling

| | | plan_gist | | | PlanGist, when set, indicates a particular plan that we want collect diagnostics for. This can be useful when a single fingerprint can result in multiple plans.<br><br>There is a caveat to using this filtering: since the plan gist for a running query is only available after the optimizer has done its part, the trace will only include things after the optimizer is done. | | | antiplangist | | | AntiPlanGist, when set, indicates that any plan not matching PlanGist will do. | | | redacted | | | Redacted, when set, indicates that the redacted bundle is requested. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | report | | | | | <a name="cockroach.server.serverpb.CreateStatementDiagnosticsReportResponse-cockroach.server.serverpb.StatementDiagnosticsReport"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | completed | | | | | | statement_fingerprint | | | | | | statementdiagnosticsid | | | | | | requested_at | | | | | | minexecutionlatency | | | | | | expiresat | | | TODO(yuzefovich): should we populate plangist, antiplangist, and redacted fields? | | `POST /_status/stmtdiagreports/cancel` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | request_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | canceled | | | canceled indicates whether the request for the given fingerprint was actually canceled. | | | error | | | error is set only if canceled is false. | | `GET /_status/stmtdiagreports` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | reports | | repeated | | | <a name="cockroach.server.serverpb.StatementDiagnosticsReportsResponse-cockroach.server.serverpb.StatementDiagnosticsReport"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | completed | | | | | | statement_fingerprint | | | | | | statementdiagnosticsid | | | | | | requested_at | | | | | | minexecutionlatency | | | | | | expiresat | | | TODO(yuzefovich): should we populate plangist, antiplangist, and redacted fields? | | `GET /status/stmtdiag/{statementdiagnostics_id}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statementdiagnosticsid | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | diagnostics | | | | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | statement_fingerprint | | | | | | collected_at | | | | | `GET /status/jobregistry/{node_id}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | running_jobs | | repeated | | | <a name="cockroach.server.serverpb.JobRegistryStatusResponse-cockroach.server.serverpb.JobRegistryStatusResponse.Job"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | `GET /status/job/{jobid}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | job_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | job | | | | | `POST /_status/resetsqlstats` Support status: Request object for issuing a SQL stats reset request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | resetpersistedstats | | | resetpersistedstats specifies if the persisted SQL Stats will be reset along with the in-memory SQL stats. | | Response object returned by ResetSQLStats. `GET /_status/indexusagestatistics` Support status: Request object for issuing IndexUsageStatistics request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is the ID of the node where the stats data shall be retrieved from. If this is left empty, the cluster-wide aggregated result will be returned. | | Response object returned by IndexUsageStatistics. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statistics | | repeated | | | | last_reset | | | Timestamp of the last index usage stats reset. | | `POST /_status/resetindexusagestats` Support status: Request object for issuing a index usage stats reset request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | clusterresetstart_time | | | Timestamp for the start time of the latest reset index usage statistics request on the cluster. | | Response object returned by ResetIndexUsageStatsRequest. `GET /_status/databases/{database}/tables/{table}/indexstats` TableIndexStats retrieves index stats for a table. Support status: Request object for issuing TableIndexStatsRequest request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | database | | | database is the name of the database that contains the table we're interested in. | | | table | | | table is the name of the table that we're querying. Table may be schema-qualified (schema.table) and each name component that contains sql unsafe characters such as . or uppercase letters must be surrounded in double quotes like "naughty schema".table. | | Response object returned by TableIndexStatsResponse. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statistics | | repeated | | | | last_reset | | | Timestamp of the latest reset index usage statistics request. | | | index_recommendations | | repeated | | | <a name="cockroach.server.serverpb.TableIndexStatsResponse-cockroach.server.serverpb.TableIndexStatsResponse.ExtendedCollectedIndexUsageStatistics"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statistics | | | | | | indexname | | | indexname is the name of the index. | | | indextype | | | indextype is the type of the index i.e. primary,

| | | createstatement | | | createstatement is the SQL statement that would re-create the current index if executed. | | | createdat | | | createdat is an approximate timestamp at which the index was created. Note that it may not always be populated. | | | indexid | | | indexid is the ID of the index. | | | tableid | | | tableid is the ID of the table which the index belongs to. | | `GET /_status/sqlroles` Support status: UserSQLRolesRequest requests a list of roles of the logged in SQL user. UserSQLRolesResponse returns a list of roles for the logged SQL user. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | roles | | repeated | roles is a list of roles for the SQL user. | | TxnIDResolution is used by the contention event store to resolve transaction ID into transaction fingerprint IDs. This RPC does not have a corresponding HTTP endpoint on purpose, since DB Console should never directly query this endpoint. The API contract is the following: if the server can resolve the transaction IDs in the RPC request, it will be returned in the RPC response. if the server is not able to resolve the transaction IDs, it will instructs the transaction ID cache to drain its write buffer. (Since transaction ID cache's write path is asynchronous, the transaction ID requested by the client might not be available in the cache yet). Client is responsible to perform retries if the requested transaction ID is not returned in the RPC response. Support status: Request object for issuing Transaction ID Resolution. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | coordinatorid | | | coordinatorid is either the NodeID or SQLInstanceID depending on whether the transaction is executed on a system tenant or a regular tenant. | | | txnIDs | | repeated | | | Response object for issuing Transaction ID Resolution. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | resolvedTxnIDs | | repeated | | | `GET /_status/transactioncontentionevents` TransactionContentionEvents returns a list of un-aggregated contention events sorted by the collection timestamp. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | events | | repeated | | | ListExecutionInsights returns potentially problematic statements cluster-wide, along with actions we suggest the application developer might take to remedy them. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | insights | | repeated | insights lists any potentially problematic statements and actions we suggest the application developer might take to remedy them. | | | errors | | repeated | errors holds any errors that occurred during fan-out calls to other

| | `GET /_status/connectivity` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | connections | | repeated | | | | errorsbynode_id | | repeated | errors contains any errors that occurred during fan-out calls to other nodes. | | <a name="cockroach.server.serverpb.NetworkConnectivityResponse-cockroach.server.serverpb.NetworkConnectivityResponse.ConnectionsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NetworkConnectivityResponse-cockroach.server.serverpb.NetworkConnectivityResponse.Connectivity"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | peers | | repeated | | | <a name="cockroach.server.serverpb.NetworkConnectivityResponse-cockroach.server.serverpb.NetworkConnectivityResponse.Connectivity.PeersEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.NetworkConnectivityResponse-cockroach.server.serverpb.NetworkConnectivityResponse.Peer"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | latency | | | | | | status | | | | | | address | | | | | | locality | | | | | | error | | | | | <a name="cockroach.server.serverpb.NetworkConnectivityResponse-cockroach.server.serverpb.NetworkConnectivityResponse.ErrorsByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /status/requestjobprofilerexecutiondetails/{jobid}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | job_id | | | | | `GET /status/jobprofilerexecutiondetails/{job_id}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | job_id | | | | | | filename | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | data | | | | | `GET /status/listjobprofilerexecutiondetails/{jobid}` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | job_id | | | | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | files | | repeated | | | `GET /_admin/v1/users` URL: /_admin/v1/users Support status: UsersRequest requests a list of users. UsersResponse returns a list of users. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | users | | repeated | usernames is a list of users for the CockroachDB cluster. | | <a name="cockroach.server.serverpb.UsersResponse-cockroach.server.serverpb.UsersResponse.User"></a> User is a CockroachDB user. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | username | | | | | `GET /_admin/v1/databases` URL: /_admin/v1/databases Support status: DatabasesRequest requests a list of databases. DatabasesResponse contains a list of

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | databases | | repeated | | | `GET /_admin/v1/databases/{database}` Example URL: /_admin/v1/databases/system Support status: DatabaseDetailsRequest requests detailed information about the specified database | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | database | | | database is the name of the database we are querying. | | | include_stats | | | Setting this flag includes a computationally-expensive stats field in the response. | | DatabaseDetailsResponse contains grant information, table names, zone configuration, and size statistics for a database. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | grants | | repeated | grants are the results of SHOW GRANTS for this database. | | | tablenames | | repeated | tablenames contains the names of all tables in this database. Note that all responses will be schema-qualified (schema.table) and that every schema or table that contains a "sql unsafe character" such as uppercase letters or dots will be surrounded with double quotes, such as "naughty schema".table. | | | descriptorid | | | descriptorid is an identifier used to uniquely identify this database. | | | zone_config | | | The zone configuration in effect for this database. | | | zoneconfiglevel | | | The level at which this object's zone configuration is set. | | | stats | | | Size information about the database, present only when explicitly requested. | | <a name="cockroach.server.serverpb.DatabaseDetailsResponse-cockroach.server.serverpb.DatabaseDetailsResponse.Grant"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | user | | | user is the user that this grant applies to. | | | privileges | | repeated | privileges are the abilities this grant gives to the user. | | <a name="cockroach.server.serverpb.DatabaseDetailsResponse-cockroach.server.serverpb.DatabaseDetailsResponse.Stats"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | missing_tables | | repeated | A list of tables that exist in the database, but for which stats could not be loaded due to failures during this request. | | | range_count | | | The number of ranges, as determined from a query of range meta keys, across all tables. | | | approximatediskbytes | | | An approximation of the disk space (in bytes) used for all replicas of all tables across the cluster. | | | nodeids | | repeated | nodeids is the ordered list of node ids on which data is stored. | | | numindexrecommendations | | | | | <a name="cockroach.server.serverpb.DatabaseDetailsResponse-cockroach.server.serverpb.DatabaseDetailsResponse.Stats.MissingTable"></a> A table which exists in the database, but for which we could not load stats during this request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | name | | | The name of the table for which we could not load stats. | | | error_message | | | The error message that resulted when the request for this table failed. | | `GET /_admin/v1/databases/{database}/tables/{table}` Example URL: /_admin/v1/databases/system/tables/ui Support status: TableDetailsRequest is a request for detailed information about a table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | database | | | database is the name of the database that contains the table we're interested

| | | table | | | table is the name of the table that we're querying. Table may be schema-qualified (schema.table) and each name component that contains sql unsafe characters such as . or uppercase letters must be surrounded in double quotes like "naughty schema".table. | | TableDetailsResponse contains grants, column names, and indexes for a table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | grants | | repeated | | | | columns | | repeated | | | | indexes | | repeated | | | | rangecount | | | rangecount is the size of the table in ranges. This provides a rough estimate of the storage requirements for the table. TODO(mrtracy): The TableStats method also returns a range_count field which is more accurate than this one; TableDetails calculates this number using a potentially faster method that is subject to cache staleness. We should consider removing or renaming this field to reflect that difference. See GitHub issue #5435 for more information. | | | createtablestatement | | | createtablestatement is the output of "SHOW CREATE" for this table; it is a SQL statement that would re-create the table's current schema if executed. | | | zone_config | | | The zone configuration in effect for this table. | | | zoneconfiglevel | | | The level at which this object's zone configuration is set. | | | descriptorid | | | descriptorid is an identifier used to uniquely identify this table. | | | configurezonestatement | | | configurezonestatement is the output of "SHOW ZONE CONFIGURATION FOR TABLE" for this table. It is a SQL statement that would re-configure the table's current zone if executed. | | | statslastcreatedat | | | statslastcreatedat is the time at which statistics were last created. | | | hasindexrecommendations | | | hasindexrecommendations notifies if the there are index recommendations on this table. | | | datatotalbytes | | | datatotalbytes is the size in bytes of live and non-live data on the table. | | | datalivebytes | | | datalivebytes is the size in bytes of live (non MVCC) data on the table. | | | datalivepercentage | | | datalivepercentage is the percentage of live (non MVCC) data on the table. | | <a name="cockroach.server.serverpb.TableDetailsResponse-cockroach.server.serverpb.TableDetailsResponse.Grant"></a> Grant is an entry from SHOW GRANTS. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | user | | | user is the user that this grant applies to. | | | privileges | | repeated | privileges are the abilities this grant gives to the user. | | <a name="cockroach.server.serverpb.TableDetailsResponse-cockroach.server.serverpb.TableDetailsResponse.Column"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | name | | | name is the name of the column. | | | type | | | type is the SQL type (INT, STRING, etc.) of this column. | | | nullable | | | nullable is whether this column can contain NULL. | | | defaultvalue | | | defaultvalue is the default value of this column. | | | generationexpression | | | generationexpression is the generator expression if the column is computed. | | | hidden | | | hidden is whether this column is hidden. | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | name | | | name is the name of this index. | | | unique | | | unique is whether this a unique index (i.e. CREATE UNIQUE INDEX). | | | seq | | | seq is an internal variable that's passed along. | | | column | | | column is the column that this index indexes. | | | direction | | | direction is either "ASC" (ascending) or "DESC" (descending). | | | storing | | | storing is an internal variable that's passed along. | | | implicit | | | implicit is an internal variable that's passed along. | | `GET /_admin/v1/databases/{database}/tables/{table}/stats` Example URL: /_admin/v1/databases/system/tables/ui/stats Support status: TableStatsRequest is a request for detailed, computationally expensive information about a table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | database | | | database is the name of the database that contains the table we're interested in. | | | table | | | table is the name of the table that we're querying. Table may be schema-qualified (schema.table) and each name component that contains sql unsafe characters such as . or uppercase letters must be surrounded in double quotes like "naughty schema".table. | | TableStatsResponse contains detailed, computationally expensive information about a table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | rangecount | | | rangecount is the number of ranges, as determined from a query of range meta keys. | | | replicacount | | | replicacount is the number of replicas of any range of this table, as found by querying nodes which are known to have replicas. When compared with range_count, this can be used to estimate the current replication factor of the table. | | | nodecount | | | nodecount is the number of nodes which contain data for this table, according to a query of range meta keys. | | | stats | | | stats is the summation of MVCCStats for all replicas of this table across the cluster. | | | approximatediskbytes | | | approximatediskbytes is an approximation of the disk space (in bytes) used for all replicas of this table across the cluster. | | | missing_nodes | | repeated | A list of nodes which should contain data for this table (according to cluster metadata), but could not be contacted during this request. | | | nodeids | | repeated | nodeids is the ordered list of node ids on which the table data is stored. | | <a name="cockroach.server.serverpb.TableStatsResponse-cockroach.server.serverpb.TableStatsResponse.MissingNode"></a> MissingNode represents information on a node which should contain data for this table, but could not be contacted during this request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | The ID of the missing node. | | | error_message | | | The error message that resulted when the query sent to this node failed. | | `GET /_admin/v1/nontablestats` Example URL: /_admin/v1/nontablestats Support status: NonTableStatsRequest requests statistics on cluster data ranges that do not belong to SQL tables. NonTableStatsResponse returns statistics on various cluster data ranges that do not belong to SQL tables. The statistics for each range are returned as a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | timeseriesstats | | | Information on time series ranges. | | | internalusestats | | | Information for remaining (non-table, non-time-series) ranges. | | <a name="cockroach.server.serverpb.NonTableStatsResponse-cockroach.server.serverpb.TableStatsResponse"></a> TableStatsResponse contains detailed, computationally expensive information about a table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | rangecount | | | rangecount is the number of ranges, as determined from a query of range meta keys. | | | replicacount | | | replicacount is the number of replicas of any range of this table, as found by querying nodes which are known to have replicas. When compared with range_count, this can be used to estimate the current replication factor of the table. | | | nodecount | | | nodecount is the number of nodes which contain data for this table, according to a query of range meta keys. | | | stats | | | stats is the summation of MVCCStats for all replicas of this table across the cluster. | | | approximatediskbytes | | | approximatediskbytes is an approximation of the disk space (in bytes) used for all replicas of this table across the cluster. | | | missing_nodes | | repeated | A list of nodes which should contain data for this table (according to cluster metadata), but could not be contacted during this request. | | | nodeids | | repeated | nodeids is the ordered list of node ids on which the table data is stored. | | <a name="cockroach.server.serverpb.NonTableStatsResponse-cockroach.server.serverpb.TableStatsResponse.MissingNode"></a> MissingNode represents information on a node which should contain data for this table, but could not be contacted during this request. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | The ID of the missing node. | | | error_message | | | The error message that resulted when the query sent to this node failed. | | <a name="cockroach.server.serverpb.NonTableStatsResponse-cockroach.server.serverpb.TableStatsResponse"></a> TableStatsResponse contains detailed, computationally expensive information about a table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | rangecount | | | rangecount is the number of ranges, as determined from a query of range meta keys. | | | replicacount | | | replicacount is the number of replicas of any range of this table, as found by querying nodes which are known to have replicas. When compared with range_count, this can be used to estimate the current replication factor of the table. | | | nodecount | | | nodecount is the number of nodes which contain data for this table, according to a query of range meta keys. | | | stats | | | stats is the summation of MVCCStats for all replicas of this table across the cluster. | | | approximatediskbytes | | | approximatediskbytes is an approximation of the disk space (in bytes) used for all replicas of this table across the cluster. | | | missing_nodes | | repeated | A list of nodes which should contain data for this table (according to cluster metadata), but could not be contacted during this request. | | | nodeids | | repeated | nodeids is the ordered list of node ids on which the table data is

| | `GET /_admin/v1/events` Example URLs: Example URLs: /_admin/v1/events /_admin/v1/events?limit=100 /admin/v1/events?type=createtable /admin/v1/events?type=createtable&limit=100 Support status: EventsRequest is a request for event log entries, optionally filtered by the specified event type. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | type | | | | | | limit | | | limit is the total number of results that are retrieved by the query. If this is omitted or set to 0, the default maximum number of results are returned. When set to > 0, at most only that number of results are returned. When set to < 0, an unlimited number of results are returned. | | | unredactedevents | | | unredactedevents indicates that the values in the events should not be redacted. The default is to redact, so that older versions of `cockroach zip` do not see un-redacted values by default. For good security, this field is only obeyed by the server after checking that the client of the RPC is an admin user. | | EventsResponse contains a set of event log entries. This is always limited to the latest N entries (N is enforced in the associated endpoint). | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | events | | repeated | | | <a name="cockroach.server.serverpb.EventsResponse-cockroach.server.serverpb.EventsResponse.Event"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | timestamp | | | timestamp is the time at which the event occurred. | | | eventtype | | | eventtype is the type of the event (e.g. "createtable", "droptable". | | | reportingid | | | reportingid is the reporting ID for this event. | | | info | | | info has more detailed information for the event. The contents vary depending on the event. | | | uniqueid | | | uniqueid is a unique identifier for this event. | | `POST /_admin/v1/uidata` This requires a POST. Because of the libraries we're using, the POST body must be in the following format: {"key_values": { "key1": "base64encodedvalue1"}, ... { "keyN": "base64encodedvalueN"}, } Note that all keys are quoted strings and that all values are base64- encoded. Together, SetUIData and GetUIData provide access to a "cookie jar" for the admin UI. The structure of the underlying data is meant to be opaque to the server. Support status: SetUIDataRequest stores the given key/value pairs in the system.ui table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | keyvalues | | repeated | keyvalues is a map of keys to bytes values. Each key will be stored with its corresponding value as a separate row in system.ui. | | <a name="cockroach.server.serverpb.SetUIDataRequest-cockroach.server.serverpb.SetUIDataRequest.KeyValuesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | SetUIDataResponse is currently an empty response. `GET /_admin/v1/uidata` Example URLs: /_admin/v1/uidata?keys=MYKEY /_admin/v1/uidata?keys=MYKEY1&keys=MYKEY2 Yes, it's a little odd that the query parameter is named "keys" instead of "key". I would've preferred that the URL parameter be named "key". However, it's clearer for the protobuf field to be named "keys," which makes the URL parameter "keys" as well. Support status: GETUIDataRequest requests the values for the given keys from the system.ui

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | keys | | repeated | | | GetUIDataResponse contains the requested values and the times at which the values were last updated. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | keyvalues | | repeated | keyvalues maps keys to their retrieved values. If this doesn't contain a a requested key, that key was not found. | | <a name="cockroach.server.serverpb.GetUIDataResponse-cockroach.server.serverpb.GetUIDataResponse.KeyValuesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.GetUIDataResponse-cockroach.server.serverpb.GetUIDataResponse.Value"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | value | | | value is the value of the requested key. | | | lastupdated | | | lastupdated is the time at which the value was last updated. | | `GET /_admin/v1/cluster` Cluster returns metadata for the cluster. Support status: ClusterRequest requests metadata for the cluster. ClusterResponse contains metadata for the cluster. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | cluster_id | | | The unique ID used to identify this cluster. | | | reporting_enabled | | | True if diagnostics reporting is enabled for the cluster. | | | enterprise_enabled | | | True if enterprise features are enabled for the cluster. | | `GET /_admin/v1/settings` Settings returns the cluster-wide settings for the cluster. Support status: SettingsRequest inquires what are the current settings in the cluster. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | keys | | repeated | The array of setting keys or names to retrieve. An empty keys array means "all". | | | unredacted_values | | | Indicate whether to see unredacted setting values. This is opt-in so that a previous version `cockroach zip` does not start reporting values when this becomes active. For good security, the server only obeys this after it checks that the logger-in user has admin privilege. | | SettingsResponse is the response to SettingsRequest. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key_values | | repeated | | | <a name="cockroach.server.serverpb.SettingsResponse-cockroach.server.serverpb.SettingsResponse.KeyValuesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.SettingsResponse-cockroach.server.serverpb.SettingsResponse.Value"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | value | | | The value of the setting. | | | type | | | The type of the setting. | | | description | | | An extended description text. | | | public | | | Whether the setting is public or reserved. | | | last_updated | | | When the setting was last updated. | | | name | | | The setting name for display purposes. | | `GET /health` Health returns liveness for the node target of the request. Support status: HealthRequest requests a liveness or readiness check. A liveness check is triggered via ready set to

In this mode, an empty response is returned immediately, that is, the caller merely learns that the process is running. A readiness check (ready == true) is suitable for determining whether user traffic should be directed at a given node, for example by a load balancer. In this mode, a successful response is returned only if the node: is not in the process of shutting down or booting up (including waiting for cluster bootstrap); is regarded as healthy by the cluster via the recent broadcast of a liveness beacon. Absent either of these conditions, an error code will result. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | ready | | | ready specifies whether the client wants to know whether the target node is ready to receive traffic. If a node is unready, an error will be returned. | | HealthResponse is the response to HealthRequest. It currently does not contain any information. `GET /_admin/v1/liveness` Liveness returns the liveness state of all nodes on the cluster. Support status: LivenessRequest requests liveness data for all nodes on the cluster. LivenessResponse contains the liveness status of each node on the cluster. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | livenesses | | repeated | | | | statuses | | repeated | | | <a name="cockroach.server.serverpb.LivenessResponse-cockroach.server.serverpb.LivenessResponse.StatusesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /_admin/v1/jobs` Jobs returns the job records for all jobs of the given status and type. Support status: JobsRequest requests system job information of the given status and type. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | limit | | | | | | status | | | | | | type | | | | | JobsResponse contains the job record for each matching job. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | jobs | | repeated | | | | earliestretainedtime | | | | | <a name="cockroach.server.serverpb.JobsResponse-cockroach.server.serverpb.JobResponse"></a> JobResponse contains the job record for a job. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | type | | | | | | description | | | | | | statement | | | | | | username | | | | | | descriptor_ids | | repeated | | | | status | | | | | | created | | | | | | started | | | | | | finished | | | | | | modified | | | | | | fraction_completed | | | | | | error | | | | | | highwatertimestamp | | | highwatertimestamp is the highwater timestamp returned as normal timestamp. This is appropriate for display to humans. | | | highwaterdecimal | | | highwaterdecimal is the highwater timestamp in the proprietary decimal form used by logical timestamps internally. This is appropriate to pass to a "AS OF SYSTEM TIME" SQL

| | | running_status | | | | | | last_run | | | | | | next_run | | | | | | num_runs | | | | | | execution_failures | | repeated | ExecutionFailures is a log of execution failures of the job. It is not guaranteed to contain all execution failures and some execution failures may not contain an error or end. | | | coordinatorid | | | coordinatorid identifies the node coordinating the job. This value will only be present for jobs that are currently running or recently ran. | | <a name="cockroach.server.serverpb.JobsResponse-cockroach.server.serverpb.JobResponse.ExecutionFailure"></a> ExecutionFailure corresponds to a failure to execute the job with the attempt starting at start and ending at end. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | status | | | Status is the status of the job during the execution. | | | start | | | Start is the time at which the execution started. | | | end | | | End is the time at which the error occurred. | | | error | | | Error is the error which occurred. | | `GET /admin/v1/jobs/{jobid}` Job returns the job record for the job of the given job_id. Support status: JobRequest requests system job information for the given job_id. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | job_id | | | | | JobResponse contains the job record for a job. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | id | | | | | | type | | | | | | description | | | | | | statement | | | | | | username | | | | | | descriptor_ids | | repeated | | | | status | | | | | | created | | | | | | started | | | | | | finished | | | | | | modified | | | | | | fraction_completed | | | | | | error | | | | | | highwatertimestamp | | | highwatertimestamp is the highwater timestamp returned as normal timestamp. This is appropriate for display to humans. | | | highwaterdecimal | | | highwaterdecimal is the highwater timestamp in the proprietary decimal form used by logical timestamps internally. This is appropriate to pass to a "AS OF SYSTEM TIME" SQL statement. | | | running_status | | | | | | last_run | | | | | | next_run | | | | | | num_runs | | | | | | execution_failures | | repeated | ExecutionFailures is a log of execution failures of the job. It is not guaranteed to contain all execution failures and some execution failures may not contain an error or end. | | | coordinatorid | | | coordinatorid identifies the node coordinating the job. This value will only be present for jobs that are currently running or recently ran. | | <a name="cockroach.server.serverpb.JobResponse-cockroach.server.serverpb.JobResponse.ExecutionFailure"></a> ExecutionFailure corresponds to a failure to execute the job with the attempt starting at start and ending at end. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | status | | | Status is the status of the job during the execution. | | | start | | | Start is the time at which the execution

| | | end | | | End is the time at which the error occurred. | | | error | | | Error is the error which occurred. | | `GET /_admin/v1/locations` Locations returns the locality location records. Support status: LocationsRequest requests system locality location information. JobsResponse contains the job record for each matching job. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | locations | | repeated | | | <a name="cockroach.server.serverpb.LocationsResponse-cockroach.server.serverpb.LocationsResponse.Location"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | locality_key | | | | | | locality_value | | | | | | latitude | | | | | | longitude | | | | | `GET /_admin/v1/queryplan` QueryPlan returns the query plans for a SQL string. Support status: QueryPlanRequest requests the query plans for a SQL string. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | query | | | query is the SQL query string. | | QueryPlanResponse contains the query plans for a SQL string (currently only the distsql physical query plan). | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | distsqlphysicalquery_plan | | | | | Drain puts the node into the specified drain mode(s) and optionally instructs the process to terminate. We do not expose this via HTTP unless we have a way to authenticate authorize streaming RPC connections. See #42567. Support status: DrainRequest instructs the receiving node to drain. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | shutdown | | | When true, terminates the process after the server has started draining. Setting both shutdown and dodrain to false causes the request to only operate as a probe. Setting dodrain to false and shutdown to true causes the server to shut down immediately without first draining. | | | dodrain | | | When true, perform the drain phase. See the comment above on shutdown for an explanation of the interaction between the two. dodrain is also implied by a non-nil deprecatedprobeindicator. | | | nodeid | | | nodeid is a string so that "local" can be used to specify that no forwarding is necessary. For compatibility with v21.2 nodes, an empty node_id is interpreted as "local". This behavior might be removed in subsequent versions. | | | verbose | | | When true, more detailed information is logged during the range lease drain phase. | | DrainResponse is the response to a successful DrainRequest. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | isdraining | | | isdraining is set to true iff the server is currently draining. This is set to true in response to a request where skipdrain is false; but it can also be set to true in response to a probe request (!shutdown && skipdrain) if another drain request has been issued prior or asynchronously. | | | drainremainingindicator | | | drainremainingindicator measures, at the time of starting to process the corresponding drain request, how many actions to fully drain the node were deemed to be

Some, but not all, of these actions may already have been carried out by the time this indicator is received by the client. The client should issue requests until this indicator first reaches zero, which indicates that the node is fully drained.<br><br>The API contract is the following:<br><br>- upon a first Drain call with dodrain set, the remaining indicator will have some value >=0. If >0, it indicates that drain is pushing state away from the node. (What this state precisely means is left unspecified for this field. See below for details.)<br><br>- upon a subsequent Drain call with dodrain set, the remaining indicator should have reduced in value. The drain process does best effort at shedding state away from the node; hopefully, all the state is shed away upon the first call and the progress indicator can be zero as early as the second call. However, if there was a lot of state to shed, it is possible for timeout to be encountered upon the first call. In that case, the second call will do some more work and return a non-zero value as well.<br><br>- eventually, in an iterated sequence of DrainRequests with dodrain set, the remaining indicator should reduce to zero. At that point the client can conclude that no state is left to shed, and it should be safe to shut down the node with a DrainRequest with shutdown = true.<br><br>Note that this field is left unpopulated (and thus remains at zero) for pre-20.1 nodes. A client can recognize this by observing isdraining to be false after a request with dodrain = true: the isdraining field is also left unpopulated by pre-20.1 nodes. | | | drainremainingdescription | | | drainremainingdescription is an informal (= not machine-parsable) string that explains the progress of the drain process to human eyes. This is intended for use mainly for troubleshooting.<br><br>The field is only populated if do_drain is true in the request. | | DecommissionPreCheck requests that the server execute preliminary checks to evaluate the possibility of successfully decommissioning a given node. Support status: DecommissionPreCheckRequest requests that preliminary checks be run to ensure that the specified node(s) can be decommissioned successfully. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_ids | | repeated | | | | numreplicareport | | | The maximum number of ranges for which to report errors. | | | strict_readiness | | | If true, all ranges on the checked nodes must only need replacement or removal for decommissioning. | | | collecttraces | | | If true, collect traces for each range checked. Requires numreplica_report > 0. | | DecommissionPreCheckResponse returns the number of replicas that encountered errors when running preliminary decommissioning checks, as well as the associated error messages and traces, for each node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | checked_nodes | | repeated | Status of the preliminary decommission checks across nodes. | | <a name="cockroach.server.serverpb.DecommissionPreCheckResponse-cockroach.server.serverpb.DecommissionPreCheckResponse.NodeCheckResult"></a> The result of checking a single node's readiness for decommission. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | decommission_readiness | | | The node's decommission readiness status. | | | replica_count | | | The number of total replicas on the node, computed by scanning range

| | | checked_ranges | | repeated | The details and recorded traces from preprocessing each range with a replica on the checked nodes that resulted in error, up to the maximum specified in the request. | | <a name="cockroach.server.serverpb.DecommissionPreCheckResponse-cockroach.server.serverpb.DecommissionPreCheckResponse.RangeCheckResult"></a> The result of checking a range's readiness for the decommission. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | | | | action | | | The action determined by the allocator that is needed for the range. | | | events | | repeated | All trace events collected while checking the range. | | | error | | | The error message from the allocator's processing, if any. | | <a name="cockroach.server.serverpb.DecommissionPreCheckResponse-cockroach.server.serverpb.TraceEvent"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | time | | | | | | message | | | | | Decommission puts the node(s) into the specified decommissioning state. If this ever becomes exposed via HTTP, ensure that it performs authorization. See #42567. Support status: DecommissionRequest requests the server to set the membership status on all nodes specified by NodeIDs to the value of TargetMembership. If no NodeIDs are given, it targets the recipient node. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_ids | | repeated | | | | target_membership | | | | | | numreplicareport | | | The number of decommissioning replicas to be reported. | | DecommissionStatusResponse lists decommissioning statuses for a number of NodeIDs. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | status | | repeated | Status of all affected nodes. | | <a name="cockroach.server.serverpb.DecommissionStatusResponse-cockroach.server.serverpb.DecommissionStatusResponse.Status"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | is_live | | | | | | replica_count | | | The number of replicas on the node, computed by scanning meta2 ranges. | | | membership | | | The membership status of the given node. | | | draining | | | | | | reported_replicas | | repeated | Decommissioning replicas on the given node to be reported. How many replicas are reported is determined by what was specified in the request. | | <a name="cockroach.server.serverpb.DecommissionStatusResponse-cockroach.server.serverpb.DecommissionStatusResponse.Replica"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replica_id | | | | | | range_id | | | | | DecommissionStatus retrieves the decommissioning status of the specified nodes. If this ever becomes exposed via HTTP, ensure that it performs authorization. See #42567. Support status: DecommissionStatusRequest requests the decommissioning status for the specified or, if none are specified, all nodes. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_ids | | repeated | | | | numreplicareport | | | The number of decommissioning replicas to be reported. | | DecommissionStatusResponse lists decommissioning statuses for a number of NodeIDs. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | status | | repeated | Status of all affected nodes. | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | is_live | | | | | | replica_count | | | The number of replicas on the node, computed by scanning meta2 ranges. | | | membership | | | The membership status of the given node. | | | draining | | | | | | reported_replicas | | repeated | Decommissioning replicas on the given node to be reported. How many replicas are reported is determined by what was specified in the request. | | <a name="cockroach.server.serverpb.DecommissionStatusResponse-cockroach.server.serverpb.DecommissionStatusResponse.Replica"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replica_id | | | | | | range_id | | | | | `GET /admin/v1/rangelog/{rangeid}` URL: /_admin/v1/rangelog URL: /_admin/v1/rangelog?limit=100 URL: /_admin/v1/rangelog/1 URL: /_admin/v1/rangelog/1?limit=100 Support status: RangeLogRequest request the history of a range from the range log. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_id | | | TODO(tamird): use | | limit | | | limit is the total number of results that are retrieved by the query. If this is omitted or set to 0, the default maximum number of results are returned. When set to > 0, at most only that number of results are returned. When set to < 0, an unlimited number of results are returned. | | RangeLogResponse contains a list of entries from the range log table. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | events | | repeated | | | <a name="cockroach.server.serverpb.RangeLogResponse-cockroach.server.serverpb.RangeLogResponse.Event"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | event | | | | | | pretty_info | | | | | <a name="cockroach.server.serverpb.RangeLogResponse-cockroach.server.serverpb.RangeLogResponse.PrettyInfo"></a> To avoid porting the pretty printing of keys and descriptors to javascript, they will be precomputed on the serverside. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | updated_desc | | | | | | new_desc | | | | | | added_replica | | | | | | removed_replica | | | | | | reason | | | | | | details | | | | | `GET /admin/v1/datadistribution` Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | database_info | | repeated | By database name. | | | zone_configs | | repeated | By zone name. | | <a name="cockroach.server.serverpb.DataDistributionResponse-cockroach.server.serverpb.DataDistributionResponse.DatabaseInfoEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.DataDistributionResponse-cockroach.server.serverpb.DataDistributionResponse.DatabaseInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | table_info | | repeated | By table name. | | <a name="cockroach.server.serverpb.DataDistributionResponse-cockroach.server.serverpb.DataDistributionResponse.DatabaseInfo.TableInfoEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replicacountbynodeid | | repeated | | | | zoneconfigid | | | | | | dropped_at | | | | | <a name="cockroach.server.serverpb.DataDistributionResponse-cockroach.server.serverpb.DataDistributionResponse.TableInfo.ReplicaCountByNodeIdEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.DataDistributionResponse-cockroach.server.serverpb.DataDistributionResponse.ZoneConfigsEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | <a name="cockroach.server.serverpb.DataDistributionResponse-cockroach.server.serverpb.DataDistributionResponse.ZoneConfig"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | target | | | target is the object the zone config applies to, e.g. "DATABASE db" or "PARTITION north_america OF TABLE users". | | | config | | | | | | configsql | | | configsql is the SQL representation of config. | | `GET /_admin/v1/metricmetadata` URL: /_admin/v1/metricmetadata Support status: MetricMetadataRequest requests metadata for all metrics. MetricMetadataResponse contains the metadata for all metrics. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | metadata | | repeated | | | <a name="cockroach.server.serverpb.MetricMetadataResponse-cockroach.server.serverpb.MetricMetadataResponse.MetadataEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /_admin/v1/chartcatalog` URL: /_admin/v1/chartcatalog Support status: ChartCatalogRequest requests returns a catalog of Admin UI charts. ChartCatalogResponse returns a catalog of Admin UI charts useful for debugging. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | catalog | | repeated | | | `POST /admin/v1/enqueuerange` EnqueueRange runs the specified range through the specified queue on the range's leaseholder store, returning the detailed trace and error information from doing so. Parameters must be provided in the body of the POST request. For example: { "queue": "raftlog", "rangeId": 10 } Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | nodeid | | | The node on which the queue should process the range. If nodeid is 0, the request will be forwarded to all other nodes. | | | queue | | | The name of the replica queue to run the range through. Matched against each queue's name field. See the implementation of baseQueue for details. | | | range_id | | | The ID of the range to run through the queue. | | | skipshouldqueue | | | If set, run the queue's process method without first checking whether the replica should be processed by calling shouldQueue. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | details | | repeated | | | <a name="cockroach.server.serverpb.EnqueueRangeResponse-cockroach.server.serverpb.EnqueueRangeResponse.Details"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | | events | | repeated | All trace events collected while processing the range in the queue. | | | error | | | The error message from the queue's processing, if

| | <a name="cockroach.server.serverpb.EnqueueRangeResponse-cockroach.server.serverpb.TraceEvent"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | time | | | | | | message | | | | | SendKVBatch proxies the given BatchRequest into KV, returning the response. It is used by the CLI `debug send-kv-batch` command. Support status: `GET /admin/v1/tracesnapshots` ListTracingSnapshots retrieves the list of snapshots of the Active Spans Registry that the node currently has in memory. A new snapshot can be captured with TakeTracingSnapshots. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshots | | repeated | | | <a name="cockroach.server.serverpb.ListTracingSnapshotsResponse-cockroach.server.serverpb.SnapshotInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot_id | | | SnapshotID identifies a specific snapshot which can be requested via a GetTracingSnapshotRequest. Negative IDs are used for "automatic" snapshots. | | | captured_at | | | | | `POST /admin/v1/tracesnapshots` TakeTracingSnapshot captures a new snapshot of the Active Spans Registry. The new snapshot is returned, and also made available through ListTracingSnapshots. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot | | | | | <a name="cockroach.server.serverpb.TakeTracingSnapshotResponse-cockroach.server.serverpb.SnapshotInfo"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot_id | | | SnapshotID identifies a specific snapshot which can be requested via a GetTracingSnapshotRequest. Negative IDs are used for "automatic" snapshots. | | | captured_at | | | | | `GET /admin/v1/tracesnapshots/{snapshot_id}` GetTracingSnapshot returns a snapshot of the tracing spans in the active spans registry previously generated through TakeTracingSnapshots. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot_id | | | SnapshotId indicates which snapshot is requested. ID may be negative when requesting an "automatic" snapshot; see ListTracingSnapshotsResponse. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot | | | | | <a name="cockroach.server.serverpb.GetTracingSnapshotResponse-cockroach.server.serverpb.TracingSnapshot"></a> TracingSnapshot represents a snapshot of the active spans registry, including all the spans that were open at the time when the snapshot was taken. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot_id | | | | | | captured_at | | | | | | spans | | repeated | | | | stacks | | repeated | Ideally we'd use int64 to match the goroutine_id type but unfortunately, the way that grpc-gateway parses these objects into Javascript results in odd encodings of Long JS types that are difficult to interact with as map keys. Thus, we settle for string. | | <a name="cockroach.server.serverpb.GetTracingSnapshotResponse-cockroach.server.serverpb.TracingSpan"></a> TracingSpan represents a span, in a form slightly processed for the use of the tracing

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | operation | | | | | | trace_id | | | | | | span_id | | | | | | parentspanid | | | | | | start | | | | | | goroutine_id | | | | | | processed_tags | | repeated | | | | current | | | current is set if the span is still alive (i.e. still present in the active spans registry). | | | currentrecordingmode | | | currentrecordingmode represents the span's current recording mode. This is not set if current == false. | | | children_metadata | | repeated | | | <a name="cockroach.server.serverpb.GetTracingSnapshotResponse-cockroach.server.serverpb.SpanTag"></a> SpanTag represents a tag on a tracing span, in a form processed for the use of the tracing UI. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | val | | | | | | caption | | | | | | link | | | | | | hidden | | | | | | highlight | | | | | | inherit | | | | | | inherited | | | | | | propagate_up | | | | | | copiedfromchild | | | | | | children | | repeated | May be empty. | | <a name="cockroach.server.serverpb.GetTracingSnapshotResponse-cockroach.server.serverpb.ChildSpanTag"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | val | | | | | <a name="cockroach.server.serverpb.GetTracingSnapshotResponse-cockroach.server.serverpb.NamedOperationMetadata"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | name | | | | | | metadata | | | | | <a name="cockroach.server.serverpb.GetTracingSnapshotResponse-cockroach.server.serverpb.TracingSnapshot.StacksEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `POST /_admin/v1/traces` GetTrace returns the trace with a specified ID. Depending on the request, the trace is returned either from a snapshot that was previously taken, or directly from the active spans registry. Support status: GetTrace represents the request of the GetTrace RPC. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshot_id | | | If a snapshot is specified, the trace information is returned from that snapshot. If a snapshot is not specified, information about currently opened spans is returned from the active spans registry. | | | trace_id | | | | | | recording_type | | | | | GetTrace represents the response to the GetTrace RPC. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | snapshotid | | | snapshotid identifies the snapshot that the trace was retrieved from. If 0, the trace was not retrieved from a registry, but directly from the active spans registry. | | | trace_id | | | | | | stillexists | | | stillexists is set if any spans from this trace are currently present in the active spans registry.<br><br>If snapshotid is 0, stillexists is always set. | | | serializedrecording | | | serializedrecording represents the serialization of trace recording. We return the recording already serialized as formatted string for easy consumption in the browser. | | `POST /_admin/v1/settracerecordingtype` SetTraceRecordingType sets the recording mode of all or some of the spans in a trace. Support status: SetTraceRecordingTypeRequest is the request for SetTraceRecordingType, which sets the recording mode of all or some of the spans in a

| Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | trace_id | | | TraceID identifies the trace to toggle the recording of. It must always be specified. | | | span_id | | | SpanID, if not zero, controls which spans in the trace get their recording mode set. If zero, all spans in the trace are updated. If not zero, only the respective span and its descendants get updated. | | | recording_mode | | | | | SetTraceRecordingTypeRequest is the response for SetTraceRecordingType. RecoveryCollectReplicaInfo retrieves information about: range descriptors contained in cluster meta ranges if meta ranges are readable; replica information from all live nodes that have connection to the target node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | max_concurrency | | | MaxConcurrency is the maximum parallelism that will be used when fanning out RPCs to nodes in the cluster while servicing this request. A value of 0 disables concurrency. A negative value configures no limit for concurrency. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | range_descriptor | | | | | | replica_info | | | | | | nodestreamrestarted | | | | | | metadata | | | | | <a name="cockroach.server.serverpb.RecoveryCollectReplicaInfoResponse-cockroach.server.serverpb.RecoveryCollectReplicaRestartNodeStream"></a> RecoveryCollectReplicaRestartNodeStream is sent by collector node to client if it experiences a transient failure collecting data from one of the nodes. This message instructs client to drop any data that it collected locally for specified node as streaming for this node would be restarted. This mechanism is needed to avoid restarting the whole collection procedure in large cluster if one of the nodes fails transiently. | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | node_id | | | | | RecoveryCollectLocalReplicaInfo retrieve information about all local replicas in all stores on the node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | replica_info | | | | | RecoveryStagePlan stages recovery plan on target or all nodes in cluster depending on request content and marks nodes deleted in the plan as decommissioned in each node's local node tombstone storage. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | plan | | | Plan is replica update plan to stage for application on next restart. Plan could be empty in that case existing plan is removed if present. | | | all_nodes | | | If all nodes is true, then receiver should act as a coordinator and perform a fan-out to stage plan on all nodes of the cluster. | | | force_plan | | | ForcePlan tells receiver to ignore any plan already staged on the node if it is present and replace it with new plan (including empty one). | | | forcelocalinternal_version | | | ForceLocalInternalVersion tells server to update internal component of plan version to the one of active cluster version. This option needs to be set if target cluster is stuck in recovery where only part of nodes were successfully

| | | max_concurrency | | | MaxConcurrency is the maximum parallelism that will be used when fanning out RPCs to nodes in the cluster while servicing this request. A value of 0 disables concurrency. A negative value configures no limit for concurrency. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | errors | | repeated | Errors contain error messages happened during plan staging. | | RecoveryNodeStatus retrieves loss of quorum recovery status of a single node. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | status | | | | | RecoveryVerify verifies that recovery plan is applied on all necessary nodes, ranges are available and nodes removed in plan are marked as decommissioned. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | plan_id | | | PlanID is ID of the plan to verify. | | | decommissionednodeids | | repeated | DecommissionedNodeIDs is a set of nodes that should be marked as decommissioned in the cluster when loss of quorum recovery successfully applies. | | | maxreportedranges | | | MaxReportedRanges is the maximum number of failed ranges to report. If more unhealthy ranges are found, error will be returned alongside range to indicate that ranges were cut short. | | | max_concurrency | | | MaxConcurrency is the maximum parallelism that will be used when fanning out RPCs to nodes in the cluster while servicing this request. A value of 0 disables concurrency. A negative value configures no limit for concurrency. | | | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | statuses | | repeated | Statuses contain a list of recovery statuses of nodes updated during recovery. It also contains nodes that were expected to be live (not decommissioned by recovery) but failed to return status response. | | | unavailable_ranges | | | UnavailableRanges contains information about ranges that failed health check. | | | decommissionednodestatuses | | repeated | DecommissionedNodeStatuses contains a map of requested IDs with their corresponding liveness statuses. | | <a name="cockroach.server.serverpb.RecoveryVerifyResponse-cockroach.server.serverpb.RecoveryVerifyResponse.UnavailableRanges"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | ranges | | repeated | Ranges contains descriptors of ranges that failed health check. If there are too many ranges to report, error would contain relevant message. | | | error | | | Error contains an optional error if ranges validation can't complete. | | <a name="cockroach.server.serverpb.RecoveryVerifyResponse-cockroach.server.serverpb.RecoveryVerifyResponse.DecommissionedNodeStatusesEntry"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | key | | | | | | value | | | | | `GET /_admin/v1/tenants` ListTenants returns a list of active tenants in the cluster. Support status: | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tenants | | repeated | | | <a name="cockroach.server.serverpb.ListTenantsResponse-cockroach.server.serverpb.Tenant"></a> | Field | Type | Label | Description | Support status | | -- | - | -- | -- | -- | | tenant_id | | | | | | tenant_name | | | | | | sql_addr | | | | |