mirror of
https://github.com/systemd/systemd.git
synced 2024-12-22 17:35:35 +03:00
sd-journal: suppress empty lines
Let's make sure our logging APIs is in sync with how stdout/stderr logging works.
This commit is contained in:
parent
4c5db93f8a
commit
0d23bc57da
@ -106,7 +106,8 @@
|
||||
but no such restrictions are enforced. Note that log messages written using this function are generally not
|
||||
expected to end in a new-line character. However, as all trailing whitespace (including spaces, new-lines,
|
||||
tabulators and carriage returns) are automatically stripped from the logged string, it is acceptable to specify one
|
||||
(or more). Leading whitespace (as well as inner whitespace) is left unmodified however.</para>
|
||||
(or more). Empty lines (after trailing whitespace removal) are suppressed. On non-empty lines, leading whitespace
|
||||
(as well as inner whitespace) is left unmodified. </para>
|
||||
|
||||
<para><function>sd_journal_printv()</function> is similar to
|
||||
<function>sd_journal_print()</function> but takes a variable
|
||||
|
@ -110,6 +110,10 @@ _public_ int sd_journal_printv(int priority, const char *format, va_list ap) {
|
||||
/* Strip trailing whitespace, keep prefix whitespace. */
|
||||
(void) strstrip(buffer);
|
||||
|
||||
/* Suppress empty lines */
|
||||
if (isempty(buffer+8))
|
||||
return 0;
|
||||
|
||||
zero(iov);
|
||||
IOVEC_SET_STRING(iov[0], buffer);
|
||||
IOVEC_SET_STRING(iov[1], p);
|
||||
@ -476,7 +480,12 @@ _public_ int sd_journal_printv_with_location(int priority, const char *file, con
|
||||
memcpy(buffer, "MESSAGE=", 8);
|
||||
vsnprintf(buffer+8, sizeof(buffer) - 8, format, ap);
|
||||
|
||||
(void) strstrip(buffer); /* strip trailing whitespace, keep prefixing whitespace */
|
||||
/* Strip trailing whitespace, keep prefixing whitespace */
|
||||
(void) strstrip(buffer);
|
||||
|
||||
/* Suppress empty lines */
|
||||
if (isempty(buffer+8))
|
||||
return 0;
|
||||
|
||||
/* func is initialized from __func__ which is not a macro, but
|
||||
* a static const char[], hence cannot easily be prefixed with
|
||||
|
Loading…
Reference in New Issue
Block a user