From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by sourceware.org (Postfix) with ESMTPS id B180E385802B for ; Tue, 23 Nov 2021 11:46:04 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org B180E385802B Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id E3A0C1FD58; Tue, 23 Nov 2021 11:46:03 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id CC2E013DE9; Tue, 23 Nov 2021 11:46:03 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id nhbEMHvUnGFmWAAAMHmgww (envelope-from ); Tue, 23 Nov 2021 11:46:03 +0000 From: Tom de Vries To: gdb-patches@sourceware.org Subject: [pushed] [gdb/cli] Add command: show logging active Date: Tue, 23 Nov 2021 12:46:03 +0100 Message-Id: <20211123114603.6284-1-tdevries@suse.de> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Nov 2021 11:46:08 -0000 Currently, there's no gdb command that shows whether logging is enabled or disabled. There's the show logging command, but output is identical in both cases. With logging disabled, we have: ... (gdb) set logging off (gdb) show logging logging debugredirect: The logging output mode is off. logging file: The current logfile is "gdb.txt". logging overwrite: \ Whether logging overwrites or appends to the log file is off. logging redirect: The logging output mode is off. ... and with logging enabled we have: ... (gdb) set logging on Copying output to gdb.txt. Copying debug output to gdb.txt. (gdb) show logging logging debugredirect: The logging output mode is off. logging file: The current logfile is "gdb.txt". logging overwrite: \ Whether logging overwrites or appends to the log file is off. logging redirect: The logging output mode is off. ... Add a "show logging active" command, such that we have: ... (gdb) show logging logging active: Logging is disabled. logging debugredirect: The logging output mode is off. logging file: The current logfile is "gdb.txt". logging overwrite: \ Whether logging overwrites or appends to the log file is off. logging redirect: The logging output mode is off. ... Mention the new command in NEWS and docs. Tested on x86_64-linux. --- gdb/NEWS | 5 +++++ gdb/cli/cli-logging.c | 13 +++++++++++++ gdb/doc/gdb.texinfo | 2 ++ 3 files changed, 20 insertions(+) diff --git a/gdb/NEWS b/gdb/NEWS index 9e950d2f80d..253070a2a57 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -32,6 +32,11 @@ maint show internal-warning backtrace internal-error, or an internal-warning. This is on by default for internal-error and off by default for internal-warning. +show logging active + This command shows whether logging is enabled or disabled. Whether logging + is enabled or disabled is controlled by pre-existing command + "set logging [on|off]". + * Python API ** New function gdb.add_history(), which takes a gdb.Value object diff --git a/gdb/cli/cli-logging.c b/gdb/cli/cli-logging.c index f0ee09180f9..081afcc4ca2 100644 --- a/gdb/cli/cli-logging.c +++ b/gdb/cli/cli-logging.c @@ -163,6 +163,17 @@ set_logging_off (const char *args, int from_tty) saved_filename = NULL; } +/* Show the status set by set_logging_on / set_logging_off. */ + +static void +show_logging_on_off (const char *args, int from_tty) +{ + if (saved_filename) + printf_unfiltered (_("Logging is enabled.\n")); + else + printf_unfiltered (_("Logging is disabled.\n")); +} + void _initialize_cli_logging (); void _initialize_cli_logging () @@ -211,4 +222,6 @@ The logfile is used when directing GDB's output."), _("Enable logging."), &set_logging_cmdlist); add_cmd ("off", class_support, set_logging_off, _("Disable logging."), &set_logging_cmdlist); + add_cmd ("active", class_support, show_logging_on_off, + _("Show whether logging is active."), &show_logging_cmdlist); } diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 1b13973cdc5..4bea8f9b3dc 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -1723,6 +1723,8 @@ Set @code{redirect} if you want output to go only to the log file. By default, @value{GDBN} debug output will go to both the terminal and the logfile. Set @code{debugredirect} if you want debug output to go only to the log file. @kindex show logging +@item show logging [active|file|overwrite|redirect|debugredirect] +Show the current value of the logging setting. @item show logging Show the current values of the logging settings. @end table base-commit: 0c3e266dc283a45a23185be3bb49e4d33987a892 -- 2.26.2