From: Daniel P. Berrange Date: Thu, 27 Sep 2012 12:13:09 +0000 (+0100) Subject: Automatically enable systemd journal logging X-Git-Tag: v1.0.0-rc1~197 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7022b09111d4322d21396a70d58320a9ad773962;p=thirdparty%2Flibvirt.git Automatically enable systemd journal logging Probe to see if the systemd journal is accessible, and if so enable logging to the journal by default, rather than stderr (current default under systemd). Signed-off-by: Daniel P. Berrange --- diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c index 1ca883afb2..b49acc5bde 100644 --- a/daemon/libvirtd.c +++ b/daemon/libvirtd.c @@ -636,7 +636,21 @@ daemonSetupLogging(struct daemonConfig *config, virLogParseOutputs(config->log_outputs); /* - * If no defined outputs, then direct to libvirtd.log when running + * If no defined outputs, then first try to direct it + * to the systemd journal (if it exists).... + */ + if (virLogGetNbOutputs() == 0) { + char *tmp; + if (access("/run/systemd/journal/socket", W_OK) >= 0) { + if (virAsprintf(&tmp, "%d:journald", virLogGetDefaultPriority()) < 0) + goto no_memory; + virLogParseOutputs(tmp); + VIR_FREE(tmp); + } + } + + /* + * otherwise direct to libvirtd.log when running * as daemon. Otherwise the default output is stderr. */ if (virLogGetNbOutputs() == 0) {