From bdf20a205a4d67d5f6d3ac6010a34291c2822a80 Mon Sep 17 00:00:00 2001 From: Venky Shankar Date: Wed, 28 Sep 2011 16:38:00 +0530 Subject: cli: add geo-replication log-rotate command Rotating geo-replication master/monitor log files from cli. On invocation, the log file for a given master-slave session is backed up with the current timestamp suffixed to the file name and signal is sent to gsyncd to start logging to a new log file. Sample commands: * Rotate log file for this : session: gluster volume geo-replication log-rotate * Rotate log files for all session for master volume gluster volume geo-replication log-rotate * Rotate log files for all sessions: gluster volume geo-replication log-rotate Change-Id: I75f641b4e082a04d5373c18583ca4a1d9651d27a BUG: 3519 Reviewed-on: http://review.gluster.com/529 Tested-by: Gluster Build System Reviewed-by: Csaba Henk --- cli/src/cli-cmd-parser.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'cli/src/cli-cmd-parser.c') diff --git a/cli/src/cli-cmd-parser.c b/cli/src/cli-cmd-parser.c index d3cb1240..e09db1ce 100644 --- a/cli/src/cli-cmd-parser.c +++ b/cli/src/cli-cmd-parser.c @@ -1323,7 +1323,7 @@ cli_cmd_gsync_set_parse (const char **words, int wordcount, dict_t **options) unsigned glob = 0; unsigned cmdi = 0; char *opwords[] = { "status", "start", "stop", "config", - NULL }; + "log-rotate", NULL }; char *w = NULL; GF_ASSERT (words); @@ -1338,6 +1338,7 @@ cli_cmd_gsync_set_parse (const char **words, int wordcount, dict_t **options) * volume geo-replication [$m [$s]] status * volume geo-replication [$m] $s config [[!]$opt [$val]] * volume geo-replication $m $s start|stop + * volume geo-replication $m [$s] log-rotate */ if (wordcount < 3) @@ -1414,6 +1415,11 @@ cli_cmd_gsync_set_parse (const char **words, int wordcount, dict_t **options) if (!masteri || !slavei) goto out; + } else if (strcmp(w, "log-rotate") == 0) { + type = GF_GSYNC_OPTION_TYPE_ROTATE; + + if (slavei && !masteri) + goto out; } else GF_ASSERT (!"opword mismatch"); -- cgit