原始网页:


debug zip命令会连接您的集群,收集每个节点以下的信息到一个单独的文件当中(不包括非活跃的节点):

WARNING: cockroach debug zip命令生成的文件包含了敏感的、未加密的信息,包括用户名、密码和其他的表数据。用户需要注意该文件只能分享给Cockroach Labs的开发者,且需要保证文件传输过程中文件的安全性。

细节内容

用例

有两种场景适合使用debug zip

WARNING: cockroach debug zip命令生成的文件包含了敏感的、未加密的信息,包括用户名、密码和其他的表数据。用户需要注意该文件只能分享给Cockroach Labs的开发者,且需要保证文件传输过程中文件的安全性。

收集日志文件

当用户发出debug zip命令,接收到请求的节点连接集群的其他节点。一旦节点是连通的,节点请求保存在活跃节点当中的所有日志文件。文件位置由启动节点时指定的--log-dirFlag的值决定。

因为debug zip命令依赖于CockroachDB分布式架构,意味着当时未连接到集群的其他节点不会响应命令请求,最终命令输出结果将不包含这些日志文件。

在接收到所有节点的日志文件以后,发出请求的节点将聚合所有日志文件,输出到一个指定的压缩包当中。

用户可以在解压后的文件debug/nodes/[node dir]/logs中定位日志。

子命令

cockroach debug命令包含几个子命令,用户如果需要收集集群中所有debug信息到一个单独的文件当中,需要使用的zip子命令。

debug命令的其他子命令只对CockroachDB开发者和贡献者有用。

概要

# Generate a debug zip:
cockroach debug zip [ZIP file destination] [flags]

值得注意的是此处的[flags]用于连接CockroachDB节点。这意味着该Flag值指定的必须是活跃节点。如果集群没有活跃的节点,用户需要启动至少一个节点

Flags

通用

Flag 简介
--certs-dir 证书目录的路径,用于对安全模式部署的集群进行访问验证。

环境变量:COCKROACH_CERTS_DIR
Default:${HOME}/.cockroach-certs/
--host 指定连接的主机,可以是集群任意节点的地址。

环境变量:COCKROACH_HOST
Default:localhost
--insecure 以非安全模式执行。若不配置此Flag,则需要使用--certs-dir指定有效的证书。

环境变量:COCKROACH_INSECURE
Default:false
--port
-p
连接的服务器端口

环境变量:COCKROACH_PORT
Default:26257

日志

默认情况下,debug zip命令输出错误日志到stderr,这些错误日志是debug zip命令执行过程中遇到的错误,不包含debug zip命令收集的节点日志文件当中的错误。

如果需要定位该命令的问题,可以查看日志行为

示例

生成debug zip文件

# Generate the debug zip file for an insecure cluster:
cockroach debug zip ./cockroach-data/logs/debug.zip --insecure

# Generate the debug zip file for a secure cluster:
cockroach debug zip ./cockroach-data/logs/debug.zip

# Generate the debug zip file from a remote machine:
cockroach debug zip ./crdb-debug.zip --host=200.100.50.25

NOTE: 对于访问安全模式的集群,需要用户在默认的验证文件夹${HOME}/.cockroach-certs/当中存放对应的证书密钥文件。