mirror of
https://github.com/clearlinux/systemd-stable.git
synced 2026-09-06 13:41:31 +00:00
journalctl: add ”short-iso” output format with verbose ISO8601 timestamps
Example: 2013-07-18T10:10:01+0200 sandworm CROND[20957]: (root) CMD (/usr/lib64/sa/sa1 1 1)
This commit is contained in:
committed by
Lennart Poettering
parent
884c86812c
commit
44bc6e1fe0
@@ -264,6 +264,18 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>short-iso</option>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>is very similar
|
||||
but shows ISO 8601
|
||||
wallclock timestamps.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>verbose</option>
|
||||
|
||||
@@ -133,7 +133,7 @@ static int help(void) {
|
||||
" -n --lines[=INTEGER] Number of journal entries to show\n"
|
||||
" --no-tail Show all lines, even in follow mode\n"
|
||||
" -r --reverse Show the newest entries first\n"
|
||||
" -o --output=STRING Change journal output mode (short, short-monotonic,\n"
|
||||
" -o --output=STRING Change journal output mode (short, short-monotonic, short-iso\n"
|
||||
" verbose, export, json, json-pretty, json-sse, cat)\n"
|
||||
" -x --catalog Add message explanations where available\n"
|
||||
" -l --full Do not ellipsize fields\n"
|
||||
|
||||
@@ -273,9 +273,14 @@ static int output_short(
|
||||
}
|
||||
|
||||
t = (time_t) (x / USEC_PER_SEC);
|
||||
if (strftime(buf, sizeof(buf), "%b %d %H:%M:%S", localtime_r(&t, &tm)) <= 0) {
|
||||
if (mode == OUTPUT_SHORT_ISO)
|
||||
r = strftime(buf, sizeof(buf), "%Y-%m-%dT%H:%M:%S%z", localtime_r(&t, &tm));
|
||||
else
|
||||
r = strftime(buf, sizeof(buf), "%b %d %H:%M:%S", localtime_r(&t, &tm));
|
||||
|
||||
if (r <= 0) {
|
||||
log_error("Failed to format time.");
|
||||
return r;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
fputs(buf, f);
|
||||
@@ -798,6 +803,7 @@ static int (*output_funcs[_OUTPUT_MODE_MAX])(
|
||||
|
||||
[OUTPUT_SHORT] = output_short,
|
||||
[OUTPUT_SHORT_MONOTONIC] = output_short,
|
||||
[OUTPUT_SHORT_ISO] = output_short,
|
||||
[OUTPUT_VERBOSE] = output_verbose,
|
||||
[OUTPUT_EXPORT] = output_export,
|
||||
[OUTPUT_JSON] = output_json,
|
||||
@@ -1076,6 +1082,7 @@ int show_journal_by_unit(
|
||||
static const char *const output_mode_table[_OUTPUT_MODE_MAX] = {
|
||||
[OUTPUT_SHORT] = "short",
|
||||
[OUTPUT_SHORT_MONOTONIC] = "short-monotonic",
|
||||
[OUTPUT_SHORT_ISO] = "short-iso",
|
||||
[OUTPUT_VERBOSE] = "verbose",
|
||||
[OUTPUT_EXPORT] = "export",
|
||||
[OUTPUT_JSON] = "json",
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
typedef enum OutputMode {
|
||||
OUTPUT_SHORT,
|
||||
OUTPUT_SHORT_MONOTONIC,
|
||||
OUTPUT_SHORT_ISO,
|
||||
OUTPUT_VERBOSE,
|
||||
OUTPUT_EXPORT,
|
||||
OUTPUT_JSON,
|
||||
|
||||
Reference in New Issue
Block a user