summaryrefslogtreecommitdiffstats
path: root/lib/commands/toolcontext.c
diff options
context:
space:
mode:
authorAlasdair G Kergon <agk@redhat.com>2012-08-25 20:35:48 +0100
committerAlasdair G Kergon <agk@redhat.com>2012-08-25 20:35:48 +0100
commit438e0050dfed1f8f2d74670a5f7c5e8c8819c777 (patch)
tree72488758b931b28d8a7f4294c9059a6fdd9db379 /lib/commands/toolcontext.c
parent4047e4dfb16175daec348bf44032c02181bd4c70 (diff)
downloadlvm2-438e0050dfed1f8f2d74670a5f7c5e8c8819c777.tar.gz
lvm2-438e0050dfed1f8f2d74670a5f7c5e8c8819c777.tar.xz
lvm2-438e0050dfed1f8f2d74670a5f7c5e8c8819c777.zip
config: add silent mode
Accept -q as the short form of --quiet. Suppress non-essential standard output if -q is given twice. Treat log/silent in lvm.conf as equivalent to -qq. Review all log_print messages and change some to log_print_unless_silent. When silent, the following commands still produce output: dumpconfig, lvdisplay, lvmdiskscan, lvs, pvck, pvdisplay, pvs, version, vgcfgrestore -l, vgdisplay, vgs. [Needs checking.] Non-essential messages are shifted from log level 4 to log level 5 for syslog and lvm2_log_fn purposes.
Diffstat (limited to 'lib/commands/toolcontext.c')
-rw-r--r--lib/commands/toolcontext.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/commands/toolcontext.c b/lib/commands/toolcontext.c
index 529bd51e..57667b64 100644
--- a/lib/commands/toolcontext.c
+++ b/lib/commands/toolcontext.c
@@ -144,6 +144,11 @@ static void _init_logging(struct cmd_context *cmd)
find_config_tree_int(cmd, "log/level", DEFAULT_LOGLEVEL);
init_debug(cmd->default_settings.debug);
+ /* Suppress all non-essential stdout? */
+ cmd->default_settings.silent =
+ find_config_tree_int(cmd, "log/silent", DEFAULT_SILENT);
+ init_silent(cmd->default_settings.silent);
+
/* Verbose level for tty output */
cmd->default_settings.verbose =
find_config_tree_int(cmd, "log/verbose", DEFAULT_VERBOSE);