github.com/DFWallet/tendermint-cosmos@v0.0.2/docs/tools/debugging.md (about)

     1  # Debugging
     2  
     3  ## tendermint debug kill
     4  
     5  Tendermint comes with a `debug` sub-command that allows you to kill a live
     6  Tendermint process while collecting useful information in a compressed archive.
     7  The information includes the configuration used, consensus state, network
     8  state, the node' status, the WAL, and even the stack trace of the process
     9  before exit. These files can be useful to examine when debugging a faulty
    10  Tendermint process.
    11  
    12  ```bash
    13  tendermint debug kill <pid> </path/to/out.zip> --home=</path/to/app.d>
    14  ```
    15  
    16  will write debug info into a compressed archive. The archive will contain the
    17  following:
    18  
    19  ```sh
    20  ├── config.toml
    21  ├── consensus_state.json
    22  ├── net_info.json
    23  ├── stacktrace.out
    24  ├── status.json
    25  └── wal
    26  ```
    27  
    28  Under the hood, `debug kill` fetches info from `/status`, `/net_info`, and
    29  `/dump_consensus_state` HTTP endpoints, and kills the process with `-6`, which
    30  catches the go-routine dump.
    31  
    32  ## Tendermint debug dump
    33  
    34  Also, the `debug dump` sub-command allows you to dump debugging data into
    35  compressed archives at a regular interval. These archives contain the goroutine
    36  and heap profiles in addition to the consensus state, network info, node
    37  status, and even the WAL.
    38  
    39  ```bash
    40  tendermint debug dump </path/to/out> --home=</path/to/app.d>
    41  ```
    42  
    43  will perform similarly to `kill` except it only polls the node and
    44  dumps debugging data every frequency seconds to a compressed archive under a
    45  given destination directory. Each archive will contain:
    46  
    47  ```sh
    48  ├── consensus_state.json
    49  ├── goroutine.out
    50  ├── heap.out
    51  ├── net_info.json
    52  ├── status.json
    53  └── wal
    54  ```
    55  
    56  Note: goroutine.out and heap.out will only be written if a profile address is
    57  provided and is operational. This command is blocking and will log any error.