OceanBase
English日本語简体中文
Docs Home
Products
Integrations
Release Notes

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service
OceanBase DatabaseOceanBase Cloud ToolsConnectors and MiddlewareLifecycle Support Policy

OceanBase Diagnostic Tool

V3.1.0
  • Overview
  • Install obdiag
  • Configure obdiag
  • One-click Cluster Inspection
    • Use obdiag to inspect an OceanBase cluster
    • Inspection metrics
  • One-click Information Collection
    • One-click General Information Collection
      • obdiag gather log
      • obdiag gather sysstat
      • obdiag gather plan_monitor
      • obdiag gather stack
      • obdiag gather perf
      • obdiag gather ash
      • obdiag gather tabledump
      • obdiag gather parameter
      • obdiag gather variable
      • obdiag gather clog/obdiag gather slog
      • obdiag gather obproxy_log
      • obdiag gather all
    • One-click Scenario-based Information Collection
      • Overview
      • observer.base
      • observer.backup
      • observer.backup_clean
      • observer.clog_disk_full
      • observer.cluster_down
      • observer.compaction
      • observer.cpu_high
      • observer.delay_of_primary_and_backup
      • observer.io
      • observer.log_archive
      • observer.long_transaction
      • observer.memory
      • observer.perf_sql
      • observer.px_collect_log
      • observer.recovery
      • observer.restart
      • observer.rootservice_switch
      • observer.suspend_transaction
      • observer.unit_data_imbalance
      • observer.perf_sql
      • observer.topsql
      • other.application_error
      • obproxy.restart
      • observer.unknown
  • One-click Diagnostic Analysis
    • obdiag analyze log
    • obdiag analyze flt_trace
    • obdiag analyze parameter default
    • obdiag analyze parameter diff
    • obdiag analyze variable diff
    • obdiag analyze index_space
    • obdiag analyze memory
    • obdiag analyze queue
  • One-click Root Cause Analysis
    • Use obdiag for root cause analysis
    • disconnection
    • major_hold
    • lock_conflict
    • ddl_disk_full
    • clog_disk_full
    • log_error
    • ddl_failure
    • index_ddl_error
    • transaction_disconnection
    • transaction_execute_timeout
    • transaction_not_ending
    • transaction_other_error
    • transaction_rollback
    • transaction_wait_timeout
    • oms_full_trans
  • One-click Cluster Display
    • Overview
    • Basic information of a cluster
    • Information about nodes in a cluster
    • Information about units in a cluster
    • Information about zones in a cluster
    • RootService information of a cluster
    • Information about tenants in a cluster
    • Information about events in a cluster
    • Information about locks in a cluster
    • Information about top SQL statements in a cluster
    • Information about slow SQL statements in a cluster
    • Information about tables in a cluster
    • Information about the process list in a tenant
    • Information about the execution plan of an SQL statement
    • Disk usage of a database
    • Disk usage of the specified table in a database
    • Information about all tenants in a cluster
    • Information about CPU utilization of nodes in a cluster
    • Internal table names fuzzy matched with the specified keyword
    • Information about leaders in a cluster
    • Information about locks on a table
    • Information about long-running transactions in a cluster
    • Information about operators in the actually executed plan
    • Information about the memory of all tenants
    • Information about statistics on real-time sessions of the process list
    • Information about the storage method of tables and indexes
    • Information about column NDVs of a table
    • Information about table indexes
  • Upgrade obdiag by using add-on files
  • Upgrade and uninstall obdiag
  • Telemetry Mode
  • FAQ
  • Release Notes
    • obdiag V3.1.0
    • obdiag V3.0.0
    • obdiag V2.6.0
    • obdiag V2.5.0
    • obdiag V2.4.0
    • obdiag V2.3.0
    • obdiag V2.2.0
    • obdiag V2.1.0
    • obdiag V2.0.0
    • obdiag V1.6.2
    • obdiag V1.6.1
    • obdiag V1.6.0
    • obdiag V1.5.2
    • obdiag V1.5.1
    • obdiag V1.5.0
    • obdiag V1.4.0
    • obdiag V1.3.0

Download PDF

Document Feedback
  1. Documentation Center
  2. OceanBase Diagnostic Tool
  3. V3.1.0

obdiag gather all

Last Updated:2026-09-04 08:22:11

Syntax
Examples
Method 1: Use the command out-of-the-box without a configuration file
Method 2: Use the command with a configuration file
Results

If OceanBase Diagnostic Tool (obdiag) is independently deployed, you can run this command to collect the diagnostic information of the specified OceanBase cluster, including the logs, host information, stack information, and performance information of the cluster.

If your OceanBase cluster is deployed by using OceanBase Deployer (obd), you can run obdiag commands on obd to collect diagnostic information of the cluster. For more information about the commands, see obdiag commands.

Syntax

obdiag gather all [options]

The following table describes the options.

Option
Required?
Data type
Default value
Description
--from No string Empty The start time of log collection in the yyyy-mm-dd hh:mm:ss format.

Note

If the obdiag version is earlier than V.2.0.0, do not enclose the parameter value in quotation marks. Otherwise, an error is returned. This limitation does not apply to V2.0.0 or later.

--to No string Empty The end time of log collection in the yyyy-mm-dd hh:mm:ss format.

Note

If the obdiag version is earlier than V.2.0.0, do not enclose the parameter value in quotation marks. Otherwise, an error is returned. This limitation does not apply to V2.0.0 or later.

--since No string Empty The most recent period of time for log collection, in the format of <n> <m|h|d>, where n specifies the time value, m represents "minute", h represents "hour", and d represents "day". For example, 30m specifies to collect logs of the last 30 minutes.
--scope No string all The type of log of the OceanBase cluster to be collected. Valid values: observer, election, rootservice, and all.
--grep No string Empty The search keyword.
--store_dir No string The current path where the command is executed The local path where the results are stored.
--temp_dir No string /tmp The directory where temporary files generated by the remote node during log collection are stored.
-c No string ~/.obdiag/config.yml The path of the configuration file.
--inner_config No string Empty The configurations of obdiag.
--config No string Empty The configurations of the cluster diagnosed by obdiag, in the format of --config key1=value1 --config key2=value2.

Note

For information about the parameters supported by this option, see Configure obdiag.

Examples

Method 1: Use the command out-of-the-box without a configuration file

Collect the logs, stack information, and performance information of OceanBase Database, as well as logs and CPU and memory information of specified nodes.

  • Collect logs of the specified period

    obdiag gather all --from "2022-07-28 16:25:00" --to "2022-07-28 18:30:00" \
        --config obcluster.servers.nodes[0].ip=xx.xx.xx.1 \
        --config obcluster.servers.nodes[1].ip=xx.xx.xx.xx.2 \
        --config obcluster.servers.global.ssh_username=test \
        --config obcluster.servers.global.ssh_password=****** \
        --config obcluster.servers.global.home_path=/home/admin/oceanbase
    

    The output is as follows:

    ...
    ZipFileInfo:
    +------------------+-----------+
    | Node             | LogSize   |
    +==================+===========+
    | xxx.xxx.xxx.xxx  | 29.874M   |
    +------------------+-----------+
    ...
    
    ZipFileInfo:
    +------------------+-----------+
    | Node             | LogSize   |
    +==================+===========+
    | xxx.xxx.xxx.xxx  | 143.229M  |
    +------------------+-----------+
    ...
    
    ...
    # Collect logs of the specified period.
    Summary:
    +-------------------+-----------+----------+------------------+--------+----------------------------------------------------------------------------------------------+
    | Node              | Status    | Size     | Password         | Time   | PackPath                                                                                     |
    +===================+===========+==========+==================+========+==============================================================================================+
    | xxx.xxx.xxx.xxx   | Completed | 29.874M  | fB7FrrzTGl4EK5Hl | 20 s   | obdiag_gather_pack_20220729170718/result_xxx.xxx.xxx.xxx_20220729222724_20220730003224.zip   |
    +-------------------+-----------+----------+------------------+--------+----------------------------------------------------------------------------------------------+
    | xxx.xxx.xxx.xxx   | Completed | 143.229M | SGRbXvMyA7lrnFW1 | 74 s   | obdiag_gather_pack_20220729170718/result_xxx.xxx.xxx.xxx_20220729222724_20220730003224.zip   |
    +-------------------+-----------+----------+------------------+--------+----------------------------------------------------------------------------------------------+
    
    ...
    
    # Collect real-time information of the nodes where the observer process resides.
    Summary:
    +-------------------+-----------+---------+--------+--------------------------------------------------------------------------------+
    | Node              | Status    | Size    | Time   | PackPath                                                                       |
    +===================+===========+=========+========+================================================================================+
    | xxx.xxx.xxx.xxx   | Completed | 45.276K | 5 s    | obdiag_gather_pack_20220729170856/os_info_xxx.xxx.xxx.xxx_20220729170856.zip   |
    +-------------------+-----------+---------+--------+--------------------------------------------------------------------------------+
    | xxx.xxx.xxx.xxx   | Completed | 42.152K | 6 s    | obdiag_gather_pack_20220729170856/os_info_xxx.xxx.xxx.xxx_20220729170856.zip   |
    +-------------------+-----------+---------+--------+--------------------------------------------------------------------------------+
    
    # Collect stack information of the observer process.
    Summary:
    +-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
    | Node              | Status    | Size    | Time   | PackPath                                                                        |
    +===================+===========+=========+========+=================================================================================+
    | xxx.xxx.xxx.xxx   | Completed | 22.693K | 13 s   | obdiag_gather_pack_20220729170902/obstack2_xxx.xxx.xxx.xxx_20220729170902.zip   |
    +-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
    | xxx.xxx.xxx.xxx   | Completed | 19.902K | 13 s   | obdiag_gather_pack_20220729170902/obstack2_xxx.xxx.xxx.xxx_20220729170902.zip   |
    +-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
    
    Gather Perf Summary:
    +-------------------+-----------+----------+--------+-----------------------------------------------------------------------------+
    | Node              | Status    | Size     | Time   | PackPath                                                                    |
    +===================+===========+==========+========+=============================================================================+
    | xxx.xxx.xxx.xxx   | Completed | 368.178K | 90 s   | obdiag_gather_pack_20230117140836/perf_xxx.xxx.xxx.xxx_20230117140836.zip   |
    +-------------------+-----------+----------+--------+-----------------------------------------------------------------------------+
    | xxx.xxx.xxx.xxx   | Completed | 368.178K | 90 s   | obdiag_gather_pack_20230117140836/perf_xxx.xxx.xxx.xxx_20230117140836.zip   |
    +-------------------+-----------+----------+--------+-----------------------------------------------------------------------------+
    
  • Collect logs of a recent period

    # Collect logs of the last hour with the target nodes accessible to obdiag without a password.
    obdiag gather all --since 1h \
      --config obcluster.servers.nodes[0].ip=xx.xx.xx.1 \
      --config obcluster.servers.nodes[1].ip=xx.xx.xx.xx.2 \
      --config obcluster.servers.nodes[2].ip=xx.xx.xx.xx.3 \
      --config obcluster.servers.global.home_path=/home/admin/oceanbase
    
    # Collect logs of the last 30 minutes with the target nodes accessible to obdiag without a password.
    obdiag gather all --since 30m \
      --config obcluster.servers.nodes[0].ip=xx.xx.xx.1 \
      --config obcluster.servers.nodes[1].ip=xx.xx.xx.xx.2 \
      --config obcluster.servers.nodes[2].ip=xx.xx.xx.xx.3 \
      --config obcluster.servers.global.home_path=/home/admin/oceanbase
    
    # Collect logs of the last 30 minutes with the information on different ODP nodes varying.
    obdiag gather all --since 30m \
      --config obcluster.servers.nodes[0].ip=xx.xx.xx.1 \
      --config obcluster.servers.nodes[0].ssh_username=test1 \
      --config obcluster.servers.nodes[0].ssh_password=****** \
      --config obcluster.servers.nodes[0].home_path=/home/test1/oceanbase \
      --config obcluster.servers.nodes[1].ip=xx.xx.xx.xx.2
      --config obcluster.servers.nodes[1].ssh_username=test2 \
      --config obcluster.servers.nodes[1].ssh_password=****** \
      --config obcluster.servers.nodes[1].home_path=/home/test2/oceanbase
    
    # Collect logs of the last hour with the connection information of the `sys` tenant specified. In this case, obdiag automatically obtains the IP addresses of all nodes in the cluster.
    obdiag gather all --since 1h \
      --config db_host=xx.xx.xx.xx \
      --config db_port=xxxx \
      --config tenant_sys.user=root@sys \
      --config tenant_sys.password=*** \
      --config obcluster.servers.global.ssh_username=test \
      --config obcluster.servers.global.ssh_password=****** \
      --config obcluster.servers.global.home_path=/home/admin/oceanbase
    

Method 2: Use the command with a configuration file

Before you run the command, make sure that you have configured the logon information of the target nodes in the config.yml configuration file of obdiag. For more information, see Configure obdiag.

Collect the performance reports, logs, stack information, and performance information of the specified OceanBase cluster, as well as logs and CPU and memory information of nodes in the cluster.

obdiag gather all --from "2022-07-28 16:25:00" --to "2022-07-28 18:30:00"

The output is as follows:

...
ZipFileInfo:
+------------------+-----------+
| Node             | LogSize   |
+==================+===========+
| xxx.xxx.xxx.xxx  | 29.874M   |
+------------------+-----------+
...

ZipFileInfo:
+------------------+-----------+
| Node             | LogSize   |
+==================+===========+
| xxx.xxx.xxx.xxx  | 143.229M  |
+------------------+-----------+
...


...
# Collect logs of the specified period.
Summary:
+-------------------+-----------+----------+------------------+--------+----------------------------------------------------------------------------------------------+
| Node              | Status    | Size     | Password         | Time   | PackPath                                                                                     |
+===================+===========+==========+==================+========+==============================================================================================+
| xxx.xxx.xxx.xxx   | Completed | 29.874M  | fB7FrrzTGl4EK5Hl | 20 s   | obdiag_gather_pack_20220729170718/result_xxx.xxx.xxx.xxx_20220729222724_20220730003224.zip   |
+-------------------+-----------+----------+------------------+--------+----------------------------------------------------------------------------------------------+
| xxx.xxx.xxx.xxx   | Completed | 143.229M | SGRbXvMyA7lrnFW1 | 74 s   | obdiag_gather_pack_20220729170718/result_xxx.xxx.xxx.xxx_20220729222724_20220730003224.zip   |
+-------------------+-----------+----------+------------------+--------+----------------------------------------------------------------------------------------------+

...


# Collect real-time information of the nodes where the observer process resides.
Summary:
+-------------------+-----------+---------+--------+--------------------------------------------------------------------------------+
| Node              | Status    | Size    | Time   | PackPath                                                                       |
+===================+===========+=========+========+================================================================================+
| xxx.xxx.xxx.xxx   | Completed | 45.276K | 5 s    | obdiag_gather_pack_20220729170856/os_info_xxx.xxx.xxx.xxx_20220729170856.zip   |
+-------------------+-----------+---------+--------+--------------------------------------------------------------------------------+
| xxx.xxx.xxx.xxx   | Completed | 42.152K | 6 s    | obdiag_gather_pack_20220729170856/os_info_xxx.xxx.xxx.xxx_20220729170856.zip   |
+-------------------+-----------+---------+--------+--------------------------------------------------------------------------------+


# Collect stack information of the observer process.
Summary:
+-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
| Node              | Status    | Size    | Time   | PackPath                                                                        |
+===================+===========+=========+========+=================================================================================+
| xxx.xxx.xxx.xxx   | Completed | 22.693K | 13 s   | obdiag_gather_pack_20220729170902/obstack2_xxx.xxx.xxx.xxx_20220729170902.zip   |
+-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
| xxx.xxx.xxx.xxx   | Completed | 19.902K | 13 s   | obdiag_gather_pack_20220729170902/obstack2_xxx.xxx.xxx.xxx_20220729170902.zip   |
+-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+

Gather Perf Summary:
+-------------------+-----------+----------+--------+-----------------------------------------------------------------------------+
| Node              | Status    | Size     | Time   | PackPath                                                                    |
+===================+===========+==========+========+=============================================================================+
| xxx.xxx.xxx.xxx   | Completed | 368.178K | 90 s   | obdiag_gather_pack_20230117140836/perf_xxx.xxx.xxx.xxx_20230117140836.zip   |
+-------------------+-----------+----------+--------+-----------------------------------------------------------------------------+
| xxx.xxx.xxx.xxx   | Completed | 368.178K | 90 s   | obdiag_gather_pack_20230117140836/perf_xxx.xxx.xxx.xxx_20230117140836.zip   |
+-------------------+-----------+----------+--------+-----------------------------------------------------------------------------+
# Collect logs of the last 2 hours.
obdiag gather all --since 2h

Results

The command generates a folder in the specified directory. A sample folder name is obdiag_gather_pack_20240808105846.

Previous topic

obdiag gather obproxy_log
Last

Next topic

Overview
Next
on this page
Syntax
Examples
Method 1: Use the command out-of-the-box without a configuration file
Method 2: Use the command with a configuration file
Results