> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cockroachlabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# cockroach statement-diag

Use the `cockroach statement-diag` [command](/docs/stable/cockroach-commands.md) to manage and download statement diagnostics bundles generated from the [DB Console](/docs/stable/ui-statements-page.md#diagnostics) or [`EXPLAIN ANALYZE (DEBUG)`](/docs/stable/explain-analyze#explain-analyze-debug).

## Required privileges

Only members of the `admin` role and users with the `VIEWSYSTEMTABLE` [system privilege](/docs/stable/security-reference/authorization.md#privileges), which provides read-only access to system tables, can run `cockroach statement-diag`. By default, the `root` user belongs to the `admin` role.

## Subcommands

| Subcommand | Usage |
| - | - |
| `list` | List available statement diagnostics bundles and outstanding activation requests. |
| `download` | Download a specified diagnostics bundle into a `.zip` file. |
| `delete` | Delete a statement diagnostics bundle(s). |
| `cancel` | Cancel an outstanding activation request(s). |

## Synopsis

List available statement diagnostics bundles and outstanding activation requests:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag list <flags>
```

Download a specified diagnostics bundle into a `.zip` file:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag download <diagnostics ID> [<bundle filename] <flags>
```

Delete a statement diagnostics bundle:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag delete <diagnostics ID> <flags>
```

Delete all statement diagnostics bundles:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag delete --all <flags>
```

Cancel an outstanding activation request:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag cancel <diagnostics ID> <flags>
```

Cancel all outstanding activation requests:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag cancel --all <flags>
```

## Flags

* The `delete` and `cancel` subcommands support one [general-use](#general) flag.
* All `statement-diag` subcommands support several [client connection](#client-connection) and [logging](#logging) flags.

### General

| Flag | Description |
| - | - |
| `--all` | Apply to all bundles or activation requests. |

### Client connection

| Flag | Description |
| - | - |
|  `--url` | A [connection URL](/docs/stable/connection-parameters.md#connect-using-a-url) to use instead of the other arguments. To convert a connection URL to the syntax that works with your client driver, run [`cockroach convert-url`](/docs/stable/connection-parameters#convert-a-url-for-different-drivers). **Env Variable:** `COCKROACH_URL` **Default:** no URL |
| `--host` | The server host and port number to connect to. This can be the address of any node in the cluster.  **Env Variable:** `COCKROACH_HOST` **Default:** `localhost:26257` |
| `--port` `-p` | The server port to connect to. Note: The port number can also be specified via `--host`.  **Env Variable:** `COCKROACH_PORT` **Default:** `26257` |
| `--user` `-u` | The [SQL user](/docs/stable/create-user.md) that will own the client session. **Env Variable:** `COCKROACH_USER` **Default:** `root` |
| `--insecure` | Use an insecure connection. **Env Variable:** `COCKROACH_INSECURE` **Default:** `false` |
|  `--cert-principal-map` | A comma-separated list of `<cert-principal:<db-principal` mappings. This allows mapping the principal in a cert to a DB principal such as `node` or `root` or any SQL user. This is intended for use in situations where the certificate management system places restrictions on the `Subject.CommonName` or `SubjectAlternateName` fields in the certificate (e.g., disallowing a `CommonName` like `node` or `root`). If multiple mappings are provided for the same `<cert-principal`, the last one specified in the list takes precedence. A principal not specified in the map is passed through as-is via the identity function. A cert is allowed to authenticate a DB principal if the DB principal name is contained in the mapped `CommonName` or DNS-type `SubjectAlternateName` fields. |
| `--certs-dir` | The path to the [certificate directory](/docs/stable/cockroach-cert.md) containing the CA and client certificates and client key. **Env Variable:** `COCKROACH_CERTS_DIR` **Default:** `${HOME}/.cockroach-certs/` |

See [Client Connection Parameters](/docs/stable/connection-parameters.md) for more details.

### Logging

By default, this command logs messages to `stderr`. This includes events with `WARNING` [severity](/docs/stable/logging.md#logging-levels-severities) and higher.

If you need to troubleshoot this command's behavior, you can [customize its logging behavior](/docs/stable/configure-logs.md).

## Examples

### Setup

These examples assume you are running [an insecure cluster](/docs/stable/start-a-local-cluster.md) and have requested and/or generated statement diagnostics bundles using the [DB Console](/docs/stable/ui-statements-page.md#diagnostics) or [`EXPLAIN ANALYZE (DEBUG)`](/docs/stable/explain-analyze#explain-analyze-debug).

### Download a statement diagnostics bundle

List statement diagnostics bundles and/or activation requests:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag list --insecure
```

```
Statement diagnostics bundles:
  ID                  Collection time          Statement
  603820372518502401  2020-11-02 18:29:13 UTC  CREATE DATABASE bank

Outstanding activation requests:
  ID                  Activation time          Statement
  603811900498804737  2020-11-02 17:46:08 UTC  SELECT * FROM bank.accounts
```

Download a statement diagnostics bundle to `bundle.zip`:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag download 603820372518502401 bundle.zip --insecure
```

### Delete all statement diagnostics bundles

Delete all statement diagnostics bundles:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag delete --all --insecure
```

### Cancel an activation request

List statement diagnostics bundles and/or activation requests:

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag list --insecure
```

```
Outstanding activation requests:
  ID                  Activation time          Statement
  603811900498804737  2020-11-02 17:46:08 UTC  SELECT * FROM bank.accounts
```

### Delete an activation request

```shell theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
$ cockroach statement-diag cancel 603811900498804737 --insecure
```

## See also

* [DB Console statement diagnostics](/docs/stable/ui-statements-page.md#diagnostics)
* [`EXPLAIN ANALYZE (DEBUG)`](/docs/stable/explain-analyze#explain-analyze-debug)
* [`cockroach` Commands Overview](/docs/stable/cockroach-commands)
