The cockroach statement-diag command can be used to manage and download statement diagnostics bundles generated from the Admin UI or EXPLAIN ANALYZE (DEBUG).
Required privileges
Only members of the admin role 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 .zipfile. | 
| delete | Delete a statement diagnostics bundle(s). | 
| cancel | Cancel an outstanding activation request(s). | 
Synopsis
List available statement diagnostics bundles and outstanding activation requests:
$ cockroach statement-diag list <flags>
Download a specified diagnostics bundle into a .zip file:
$ cockroach statement-diag download <diagnostics ID> <bundle filename> <flags>
Delete a statement diagnostics bundle:
$ cockroach statement-diag delete <diagnostics ID> <flags>
Delete all statement diagnostics bundles:
$ cockroach statement-diag delete --all <flags>
Cancel an outstanding activation request:
$ cockroach statement-diag cancel <diagnostics ID> <flags>
Cancel all outstanding activation requests:
$ cockroach statement-diag cancel --all <flags>
Flags
- The deleteandcancelsubcommands support one general-use flag.
- All statement-diagsubcommands support several client connection and logging flags.
General
| Flag | Description | 
|---|---|
| --all | Apply to all bundles or activation requests. | 
Client connection
| Flag | Description | 
|---|---|
| --host | The server host and port number to connect to. This can be the address of any node in the cluster. Env Variable: COCKROACH_HOSTDefault: localhost:26257 | 
| --port-p | The server port to connect to. Note: The port number can also be specified via --host.Env Variable: COCKROACH_PORTDefault: 26257 | 
| --user-u | The SQL user that will own the client session. Env Variable: COCKROACH_USERDefault: root | 
| --insecure | Use an insecure connection. Env Variable: COCKROACH_INSECUREDefault: false | 
| --certs-dir | The path to the certificate directory containing the CA and client certificates and client key. Env Variable: COCKROACH_CERTS_DIRDefault: ${HOME}/.cockroach-certs/ | 
| --url | A connection URL to use instead of the other arguments. Env Variable: COCKROACH_URLDefault: no URL | 
See Client Connection Parameters for more details.
Logging
By default, the statement-diag command logs errors to stderr.
If you need to troubleshoot this command's behavior, you can change its logging behavior.
Examples
Setup
These examples assume you are running an insecure cluster and have requested and/or generated statement diagnostics bundles using the Admin UI or EXPLAIN ANALYZE (DEBUG).
Download a statement diagnostics bundle
List statement diagnostics bundles and/or activation requests:
$ 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:
$ cockroach statement-diag download 603820372518502401 bundle.zip --insecure
Delete all statement diagnostics bundles
Delete all statement diagnostics bundles:
$ cockroach statement-diag delete --all --insecure
Cancel an activation request
List statement diagnostics bundles and/or activation requests:
$ 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:
$ cockroach statement-diag cancel 603811900498804737 --insecure