Troubleshooting With NuoDB Command

If you require assistance from NuoDB Support, it may be necessary to provide diagnostic information using NuoDB Command (nuocmd). To collect diagnostic information related to your NuoDB deployment, and generate a support package, there are several commands you may execute.

Collecting Diagnostics

Using the nuocmd command line interface, the following commands are used to extract information:

The commands introduced are issued using NuoDB Command (nuocmd). For more information on NuoDB Command and other command line tools, see Command Line Tools.
Before executing commands, type bash in the terminal command window and press the enter key; this enables the auto-completion of commands, helping you confirm that commands are correct before executing them.

get diagnose-info

nuocmd get diagnose-info collects admin logs, admin configuration, system binaries, and cores in a single zip file.

Example

nuocmd get diagnose-info --output-dir /tmp/nuodiag --include-cores

get server-logs

nuocmd get server-logs creates a zip file containing the Admin Service log files in the location specified.

Example

nuocmd get server-logs --output /tmp

get log-messages

nuocmd get log-messages streams log messages for the specified process, database, or domain.

Example

nuocmd get log-messages --log-options msgs
The --log-options parameter is required. For a complete list of log parameters, see Description of Logging Categories.

get core-file

nuocmd get core-file downloads the core file for a running database process.

Example

nuocmd get core-file --start-id 1 --output-dir /tmp/
To get the value for the --start-id parameter, run the nuocmd show domain command and then note the start ID value displayed for the SM or TE process for which you want to generate a core file. If this parameter is not specified, permission to write to the directory where you executed the command is required.

get database-connectivity

nuocmd get database-connectivity provides connectivity information for the specified database in JSON format.

Example

nuocmd get database-connectivity --db-name test
{
  "0": {
    "1": {
      "lastAckDeltaInMilliSeconds": 746,
      "lastMsgDeltaInMilliSeconds": 755
    },
    "2": {
      "lastAckDeltaInMilliSeconds": 460,
      "lastMsgDeltaInMilliSeconds": 755
    },
    "3": {
      "lastAckDeltaInMilliSeconds": 860,
      "lastMsgDeltaInMilliSeconds": 755
    }
  },
  "1": {
    "0": {
    "lastAckDeltaInMilliSeconds": 802,
    "lastMsgDeltaInMilliSeconds": 794
    },
    "2": {
      "lastAckDeltaInMilliSeconds": 508,
      "lastMsgDeltaInMilliSeconds": 794
    },
    "3": {
      "lastAckDeltaInMilliSeconds": 907,
      "lastMsgDeltaInMilliSeconds": 794
    }
  },
...

show database-connectivity

nuocmd show database-connectivity displays a connectivity graph of the specified database.

Example

nuocmd show database-connectivity --db-name test --with-node-ids
     1    2    3    4
1             27s
2             27s
3    ?    ?    ?    ?
4             32s

Legend:
X: node at this row does not consider node at this column a peer
?: node at this row could not be queried for connectivity information
!: node at this row does not have expected metadata for node at this column
[0-9]+[hms]: time since node at this row last heard from node at this column

Providing Diagnostic Information to NuoDB Support

The NuoDB Command commands documented in Collecting Diagnostics perform a system dump that you can send to NuoDB support for analysis.

Crash files should also be sent to support for analysis.

The following NuoDB support channels are available for all users