On Mon, Nov 22, 2010 at 12:10:58PM -0700, Eric Blake wrote:
On 11/22/2010 07:11 AM, Daniel P. Berrange wrote:
> Everytime a public API returns an error, libvirtd pollutes
> syslog with that error message. Reduce the error logging
> level to INFO so these don't appear by default.
>
> * src/util/virterror.c: Log all errors at INFO
> ---
> src/util/virterror.c | 14 +-------------
> 1 files changed, 1 insertions(+), 13 deletions(-)
>
> diff --git a/src/util/virterror.c b/src/util/virterror.c
> index d524d04..ecd9fc9 100644
> --- a/src/util/virterror.c
> +++ b/src/util/virterror.c
> @@ -64,18 +64,6 @@ void *virUserData = NULL; /* associated data */
> }} \
> }
>
> -static virLogPriority virErrorLevelPriority(virErrorLevel level) {
> - switch (level) {
> - case VIR_ERR_NONE:
> - return(VIR_LOG_INFO);
> - case VIR_ERR_WARNING:
> - return(VIR_LOG_WARN);
> - case VIR_ERR_ERROR:
> - return(VIR_LOG_ERROR);
> - }
> - return(VIR_LOG_ERROR);
This logs at VIR_LOG_ERROR if level is ever out of range (not one of the
3 defined virErrorLevel values). Can we ever get virErrorLevel set from
external input, or would an out-of-range enum value represent a bug in
our code? If the former, then it may still be worth keeping this
function, and only mapping the three known levels to VIR_LOG_INFO while
keeping all other values as VIR_LOG_ERROR. If the latter, then this
patch seems fine to me.
The levels only ever come from our code. In addition every single
usage is just VIR_ERR_ERROR, except for 3 places in libvirt.c
As such the error levels have no real useful information and it
is simplest to ignore them
Daniel