diff options
Diffstat (limited to 'ctdb/tools')
-rw-r--r-- | ctdb/tools/ctdb.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/ctdb/tools/ctdb.c b/ctdb/tools/ctdb.c index ae6438e85c..c9b0d78dcd 100644 --- a/ctdb/tools/ctdb.c +++ b/ctdb/tools/ctdb.c @@ -740,7 +740,11 @@ static int control_scriptstatus(struct ctdb_context *ctdb, int argc, const char return ret; } - printf("%d scripts were executed last monitoring cycle\n", script_status->num_scripts); + if (options.machinereadable) { + printf(":Name:Code:Status:Start:End:Error Output...:\n"); + } else { + printf("%d scripts were executed last monitoring cycle\n", script_status->num_scripts); + } for (i=0; i<script_status->num_scripts; i++) { const char *status = NULL; @@ -759,6 +763,18 @@ static int control_scriptstatus(struct ctdb_context *ctdb, int argc, const char status = "ERROR"; break; } + if (options.machinereadable) { + printf("%s:%i:%s:%lu.%06lu:%lu.%06lu:%s:\n", + script_status->scripts[i].name, + script_status->scripts[i].status, + status, + (long)script_status->scripts[i].start.tv_sec, + (long)script_status->scripts[i].start.tv_usec, + (long)script_status->scripts[i].finished.tv_sec, + (long)script_status->scripts[i].finished.tv_usec, + script_status->scripts[i].output); + continue; + } if (status) printf("%-20s Status:%s ", script_status->scripts[i].name, status); |