VoltDB includes a utility that collects all of the pertinent logs for a given server. The log collector retrieves the necessary system and process files from the server and saves them in a single compressed archive file. For customers requesting support from VoltDB, your support contact will often provide instructions on how and when to use the log collector and where to submit the files.
Note that the database does not need to be running to use the log collector. It can find and collect the log files based solely on the location of the VoltDB root directory where the database was run.
To collect the log files, use the voltdb collect command with the same directory specification you would use to initialize or start the database:
$ voltdb collect --prefix=mylogs -D /home/db
When you run the command you must specify the location of the root directory for the database with the
-D flag. Otherwise, the default is the current working directory. The archive
file that the collect command generates is also created in your current working directory unless you use
--output flag to specify an alternate location and filename.
The collect command has optional arguments that let you control what data is collected and the name
of the resulting archive file. In the preceding example the
--prefix flag specifies the prefix for the
archive file name. The
--skip-heap-dump flag excludes the heap dump, which can be significantly larger
than any other collection artifact, from the resulting archive. For example:
$ voltdb collect --dir=/home/db \ --prefix=mylogs \ --skip-heap-dump
Note that the voltdb collect command collects log files for the current system only. To collect logs for all servers in a cluster, you will need to issue the voltdb collect command locally on each server separately. See the voltdb collect documentation in the Using VoltDB manual for details.