On Mon, Apr 01, 2013 at 10:17:04AM +0300, Oleksii Shevchuk wrote: > --- > src/shared/conf-parser.c | 86 > ++++++++++++++++++++++++++++++------------------ > src/shared/conf-parser.h | 3 ++ > 2 files changed, 57 insertions(+), 32 deletions(-) > > diff --git a/src/shared/conf-parser.c b/src/shared/conf-parser.c > index c2cf5a6..60a6b35 100644 > --- a/src/shared/conf-parser.c > +++ b/src/shared/conf-parser.c > @@ -35,6 +35,28 @@ > #include "set.h" > #include "exit-status.h" > > +static int log_syntax(const char * file, unsigned line, bool error, const > char *description, ...) { > + _cleanup_free_ char *buf = NULL; > + > + va_list arg_descr, arg_copy; > + > + va_start(arg_descr, description); > + va_copy(arg_copy, arg_descr); > + if (vasprintf(&buf, description, arg_copy) < 0) { > + va_end(arg_descr); > + return log_oom(); > + } > + va_end(arg_descr); > + > + return log_struct(error ? LOG_ERR : LOG_WARNING, > + "MESSAGE=[%s:%d]: %s", file, line, buf, > + "MESSAGE_ID=%s\n", error ? CONF_PARSER_ERROR : > CONF_PARSER_WARNING, > + "FILE=%s\n", file, > + "LINE=%u\n", line, > + "ERROR=%s\n", buf, > + NULL); Hi, what we really need, is getting a proper SYSTEMD_UNIT tag for those messages. Then they'll appear in systemctl output, without further work.
The working assumption in systemd is that the journal is available, can can be used. So it storing messages in systemd (patch 2/2) goes against current design. Also: why not use one MESSAGE_ID? The messages are in the same format with the same meaning, and their severity can be filtered separately. FILE,LINE are about the *origin* of the message, so something different should be used for the *object* (CONFIG_FILE,CONFIG_LINE?). Zbyszek _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel