_dpll()
{
local cur prev words cword
- local opt='--Version --json --pretty'
+ local opt='--Version --json --pretty --timestamp --tshort'
local objects="device pin monitor"
_init_completion || return
return 0
;;
-j|--json)
- COMPREPLY=( $( compgen -W "--pretty $objects" -- "$cur" ) )
+ COMPREPLY=( $( compgen -W "--pretty --timestamp --tshort $objects" -- "$cur" ) )
+ return 0
+ ;;
+ -t|--timestamp|--tshort)
+ COMPREPLY=( $( compgen -W "monitor" -- "$cur" ) )
return 0
;;
*)
#define pr_err(args...) fprintf(stderr, ##args)
+#define OPT_TSHORT 256
+
int json;
+int timestamp;
struct dpll {
struct mnlu_gen_socket nlg;
{
pr_err("Usage: dpll [ OPTIONS ] OBJECT { COMMAND | help }\n"
"where OBJECT := { device | pin | monitor }\n"
- " OPTIONS := { -V | --Version | -j | --json | -p | --pretty }\n");
+ " OPTIONS := { -V | --Version | -j | --json | -p | --pretty |\n"
+ " -t | --timestamp | --tshort }\n");
}
static int cmd_device(struct dpll *dpll);
{ "Version", no_argument, NULL, 'V' },
{ "json", no_argument, NULL, 'j' },
{ "pretty", no_argument, NULL, 'p' },
+ { "timestamp", no_argument, NULL, 't' },
+ { "tshort", no_argument, NULL, OPT_TSHORT },
{ NULL, 0, NULL, 0 }
};
- const char *opt_short = "Vjp";
+ const char *opt_short = "Vjpt";
struct dpll *dpll;
int err, opt, ret;
case 'p':
pretty = true;
break;
+ case 't':
+ timestamp = 1;
+ break;
+ case OPT_TSHORT:
+ timestamp = 1;
+ timestamp_short = 1;
+ break;
default:
pr_err("Unknown option.\n");
help();
new_json_obj_plain(json);
open_json_object(NULL);
+ if (timestamp)
+ print_timestamp(stdout);
print_string(PRINT_JSON, "name", NULL, json_name);
open_json_object("msg");
print_string(PRINT_FP, NULL, "[%s] ", cmd_name);
new_json_obj_plain(json);
open_json_object(NULL);
+ if (timestamp)
+ print_timestamp(stdout);
print_string(PRINT_JSON, "name", NULL, json_name);
open_json_object("msg");
print_string(PRINT_FP, NULL, "[%s] ", cmd_name);
.IR OPTIONS " := { "
\fB\-V\fR | \fB\-\-Version\fR |
\fB\-j\fR | \fB\-\-json\fR |
-\fB\-p\fR | \fB\-\-pretty\fR }
+\fB\-p\fR | \fB\-\-pretty\fR |
+\fB\-t\fR | \fB\-\-timestamp\fR |
+\fB\-\-tshort\fR }
.SH DESCRIPTION
The
When combined with \-j, generates a pretty JSON output with indentation
and newlines for better human readability.
+.TP
+.BR "\-t" , " \-\-timestamp"
+When used with the
+.B monitor
+object, print a
+.B Timestamp:
+line before each received notification, in the same format used by
+.BR "ip monitor" .
+
+.TP
+.B "\-\-tshort"
+Like
+.BR \-t ,
+but emits a more compact, ISO 8601 inline prefix
+.RB \(lq [ YYYY-MM-DD T HH:MM:SS . uuuuuu ] \(rq
+in front of each notification instead of a separate
+.B Timestamp:
+line.
+
.SH DEVICE COMMANDS
.SS dpll device show [ id ID ] [ module-name NAME ] [ clock-id ID ] [ type TYPE ] [ mode MODE ] [ lock-status STATUS ]