splat command verbose behavior

The splat command takes a verbose option which when set prints
the internal debug log for every test.  This is helpful when
tracking down a common failure, but for a rare failure the
volume of log data is distracting.

Therefore, the verbose option has been adjusted to allow only
printing the debug log on failure.  The legacy behavior is still
available by specifying the verbose option twice.  For example:

$ splat -t all:all     # Never print the debug log
$ splat -v -t all:all  # Only print debug log on failure
$ splat -vv -t all:all # Always print the debug log

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
Brian Behlendorf 2012-12-07 09:53:55 -08:00
parent 9b88fa165f
commit 576ec6aac4

View File

@ -431,7 +431,8 @@ static int test_run(cmd_args_t *args, test_t *test)
fflush(stdout);
free(cmd);
if (args->args_verbose) {
if ((args->args_verbose == 1 && rc) ||
(args->args_verbose >= 2)) {
if ((rc = read(splatctl_fd, splat_buffer,
splat_buffer_size - 1)) < 0) {
fprintf(stdout, "Error reading results: %d\n", rc);