mirror of https://gitee.com/openkylin/libvirt.git
Various logging cleanups in code and doc
* docs/logging.html[.in] qemud/libvirtd.conf qemud/qemud.c src/logging.[ch]: cleanup the logging code and docs to remove all references to log level 0, cleanup hardcoded values and add a default VIR_LOG_DEFAULT value, patch by Amy Griffis daniel
This commit is contained in:
parent
f7bd305904
commit
2a004db6c7
|
@ -1,3 +1,10 @@
|
|||
Wed Jul 1 13:18:37 CEST 2009 Daniel Veillard <veillard@redhat.com>
|
||||
|
||||
* docs/logging.html[.in] qemud/libvirtd.conf qemud/qemud.c
|
||||
src/logging.[ch]: cleanup the logging code and docs to remove
|
||||
all references to log level 0, cleanup hardcoded values and add
|
||||
a default VIR_LOG_DEFAULT value, patch by Amy Griffis
|
||||
|
||||
Wed Jul 1 12:38:28 CEST 2009 Daniel Veillard <veillard@redhat.com>
|
||||
|
||||
* src/opennebula/one_conf.c src/opennebula/one_driver.c: cleanup
|
||||
|
|
|
@ -151,7 +151,7 @@
|
|||
variables, stored in the configuration file:
|
||||
</p>
|
||||
<ul><li>log_level: accepts the following values:
|
||||
<ul><li>0: no logging at all</li><li>4: only errors</li><li>3: warnings and errors</li><li>2: informations, warnings and errors</li><li>1: debug and everything</li></ul></li><li>log_filters: allow to define logging filters</li><li>log_outputs: allow to define logging outputs</li></ul>
|
||||
<ul><li>4: only errors</li><li>3: warnings and errors</li><li>2: informations, warnings and errors</li><li>1: debug and everything</li></ul></li><li>log_filters: allow to define logging filters</li><li>log_outputs: allow to define logging outputs</li></ul>
|
||||
<p>In both case the syntax for filters and outputs is similar.</p>
|
||||
<p>The format for a filter is:</p>
|
||||
<pre>x:name</pre>
|
||||
|
@ -170,15 +170,15 @@
|
|||
given <code>name</code> as the ident</li><li><code>x:file:file_path</code>output to a file, with the given
|
||||
filepath</li></ul>
|
||||
<p>In all cases the x prefix is the minimal level, acting as a filter:</p>
|
||||
<ul><li>0: everything</li><li>1: DEBUG</li><li>2: INFO</li><li>3: WARNING</li><li>4: ERROR</li></ul>
|
||||
<ul><li>1: DEBUG</li><li>2: INFO</li><li>3: WARNING</li><li>4: ERROR</li></ul>
|
||||
<p>Multiple output can be defined , they just need to be separated by
|
||||
spaces, e.g.: <code>"3:syslog:libvirtd 0:file:/tmp/libvirt.log"</code>
|
||||
spaces, e.g.: <code>"3:syslog:libvirtd 1:file:/tmp/libvirt.log"</code>
|
||||
will log all warnings and errors to syslog under the libvirtd ident
|
||||
but also log everything debugging and informations included in the
|
||||
file <code>/tmp/libvirt.log</code></p>
|
||||
<p>For example setting up the following:</p>
|
||||
<pre>export LIBVIRT_DEBUG=1
|
||||
export LIBVIRT_LOG_OUTPUTS="0:file:virsh.log"</pre>
|
||||
export LIBVIRT_LOG_OUTPUTS="1:file:virsh.log"</pre>
|
||||
<p>and then running virsh will accumulate the logs in the
|
||||
<code>virsh.log</code> file in a way similar to:</p>
|
||||
<pre>14:29:04.771: debug : virInitialize:278 : register drivers
|
||||
|
|
|
@ -49,7 +49,6 @@
|
|||
<ul>
|
||||
<li>log_level: accepts the following values:
|
||||
<ul>
|
||||
<li>0: no logging at all</li>
|
||||
<li>4: only errors</li>
|
||||
<li>3: warnings and errors</li>
|
||||
<li>2: informations, warnings and errors</li>
|
||||
|
@ -84,20 +83,19 @@
|
|||
</ul>
|
||||
<p>In all cases the x prefix is the minimal level, acting as a filter:</p>
|
||||
<ul>
|
||||
<li>0: everything</li>
|
||||
<li>1: DEBUG</li>
|
||||
<li>2: INFO</li>
|
||||
<li>3: WARNING</li>
|
||||
<li>4: ERROR</li>
|
||||
</ul>
|
||||
<p>Multiple output can be defined , they just need to be separated by
|
||||
spaces, e.g.: <code>"3:syslog:libvirtd 0:file:/tmp/libvirt.log"</code>
|
||||
spaces, e.g.: <code>"3:syslog:libvirtd 1:file:/tmp/libvirt.log"</code>
|
||||
will log all warnings and errors to syslog under the libvirtd ident
|
||||
but also log everything debugging and informations included in the
|
||||
file <code>/tmp/libvirt.log</code></p>
|
||||
<p>For example setting up the following:</p>
|
||||
<pre>export LIBVIRT_DEBUG=1
|
||||
export LIBVIRT_LOG_OUTPUTS="0:file:virsh.log"</pre>
|
||||
export LIBVIRT_LOG_OUTPUTS="1:file:virsh.log"</pre>
|
||||
<p>and then running virsh will accumulate the logs in the
|
||||
<code>virsh.log</code> file in a way similar to:</p>
|
||||
<pre>14:29:04.771: debug : virInitialize:278 : register drivers
|
||||
|
|
|
@ -269,7 +269,7 @@
|
|||
# Logging controls
|
||||
#
|
||||
|
||||
# Logging level: 0 none, 4 errors, 3 warnings, 2 informations, 1 debug
|
||||
# Logging level: 4 errors, 3 warnings, 2 informations, 1 debug
|
||||
# basically 1 will log everything possible
|
||||
#log_level = 3
|
||||
|
||||
|
@ -303,13 +303,12 @@
|
|||
# x:file:file_path
|
||||
# output to a file, with the given filepath
|
||||
# In all case the x prefix is the minimal level, acting as a filter
|
||||
# 0: everything
|
||||
# 1: DEBUG
|
||||
# 2: INFO
|
||||
# 3: WARNING
|
||||
# 4: ERROR
|
||||
#
|
||||
# Multiple output can be defined , they just need to be separated by spaces.
|
||||
# Multiple output can be defined, they just need to be separated by spaces.
|
||||
# e.g.:
|
||||
# log_outputs="3:syslog:libvirtd"
|
||||
# to log all warnings and errors to syslog under the libvirtd ident
|
||||
|
|
|
@ -128,7 +128,7 @@ static int sigwrite = -1; /* Signal handler pipe */
|
|||
static int ipsock = 0; /* -l Listen for TCP/IP */
|
||||
|
||||
/* Defaults for logging */
|
||||
static int log_level = 3;
|
||||
static int log_level = VIR_LOG_DEFAULT;
|
||||
static char *log_filters = NULL;
|
||||
static char *log_outputs = NULL;
|
||||
|
||||
|
@ -2499,15 +2499,16 @@ qemudSetLogging(virConfPtr conf, const char *filename) {
|
|||
log_outputs = strdup(debugEnv);
|
||||
}
|
||||
if (!log_outputs) {
|
||||
char *tmp = NULL;
|
||||
if (godaemon) {
|
||||
char *tmp = NULL;
|
||||
if (virAsprintf (&tmp, "%d:syslog:libvirtd", log_level) < 0)
|
||||
goto free_and_fail;
|
||||
virLogParseOutputs (tmp);
|
||||
VIR_FREE (tmp);
|
||||
} else {
|
||||
virLogParseOutputs("0:stderr:libvirtd");
|
||||
if (virAsprintf(&tmp, "%d:stderr", log_level) < 0)
|
||||
goto free_and_fail;
|
||||
}
|
||||
virLogParseOutputs(tmp);
|
||||
VIR_FREE(tmp);
|
||||
} else {
|
||||
virLogParseOutputs(log_outputs);
|
||||
}
|
||||
|
|
|
@ -119,7 +119,7 @@ static int virLogNbOutputs = 0;
|
|||
/*
|
||||
* Default priorities
|
||||
*/
|
||||
static virLogPriority virLogDefaultPriority = VIR_LOG_WARN;
|
||||
static virLogPriority virLogDefaultPriority = VIR_LOG_DEFAULT;
|
||||
|
||||
static int virLogResetFilters(void);
|
||||
static int virLogResetOutputs(void);
|
||||
|
@ -174,7 +174,7 @@ int virLogStartup(void) {
|
|||
virLogLen = 0;
|
||||
virLogStart = 0;
|
||||
virLogEnd = 0;
|
||||
virLogDefaultPriority = VIR_LOG_WARN;
|
||||
virLogDefaultPriority = VIR_LOG_DEFAULT;
|
||||
virLogUnlock();
|
||||
return(0);
|
||||
}
|
||||
|
@ -196,7 +196,7 @@ int virLogReset(void) {
|
|||
virLogLen = 0;
|
||||
virLogStart = 0;
|
||||
virLogEnd = 0;
|
||||
virLogDefaultPriority = VIR_LOG_WARN;
|
||||
virLogDefaultPriority = VIR_LOG_DEFAULT;
|
||||
virLogUnlock();
|
||||
return(0);
|
||||
}
|
||||
|
@ -689,7 +689,7 @@ int virLogParseOutputs(const char *outputs) {
|
|||
virSkipSpaces(&cur);
|
||||
while (*cur != 0) {
|
||||
prio= virParseNumber(&cur);
|
||||
if ((prio < 0) || (prio > 4))
|
||||
if ((prio < VIR_LOG_DEBUG) || (prio > VIR_LOG_ERROR))
|
||||
return(-1);
|
||||
if (*cur != ':')
|
||||
return(-1);
|
||||
|
@ -770,7 +770,7 @@ int virLogParseFilters(const char *filters) {
|
|||
virSkipSpaces(&cur);
|
||||
while (*cur != 0) {
|
||||
prio= virParseNumber(&cur);
|
||||
if ((prio < 0) || (prio > 4))
|
||||
if ((prio < VIR_LOG_DEBUG) || (prio > VIR_LOG_ERROR))
|
||||
return(-1);
|
||||
if (*cur != ':')
|
||||
return(-1);
|
||||
|
|
|
@ -77,6 +77,8 @@ typedef enum {
|
|||
VIR_LOG_ERROR,
|
||||
} virLogPriority;
|
||||
|
||||
#define VIR_LOG_DEFAULT VIR_LOG_WARN
|
||||
|
||||
/**
|
||||
* virLogOutputFunc:
|
||||
* @category: the category for the message
|
||||
|
|
Loading…
Reference in New Issue