From da434a42730ac5716b04ffc6197090402014b9a5 Mon Sep 17 00:00:00 2001 From: Emmanuel Garette Date: Thu, 3 Apr 2014 22:15:41 +0200 Subject: [PATCH] add logger in validation --- tiramisu/option.py | 20 ++++++++++++++------ tiramisu/setting.py | 4 ++++ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/tiramisu/option.py b/tiramisu/option.py index 3c0ede1..c3caae3 100644 --- a/tiramisu/option.py +++ b/tiramisu/option.py @@ -27,7 +27,7 @@ from IPy import IP import warnings from tiramisu.error import ConfigError, ConflictError, ValueWarning -from tiramisu.setting import groups, multitypes +from tiramisu.setting import groups, multitypes, log from tiramisu.i18n import _ from tiramisu.autolib import carry_out_calculation @@ -430,10 +430,14 @@ class Option(BaseOption): val_validator(_value) self._second_level_validation(_value, self._warnings_only) except ValueError as error: + log.debug(_('do_validation for {0}: error in value').format( + self._name), exc_info=True) if self._warnings_only: warning = error error = None except ValueWarning as warning: + log.debug(_('do_validation for {0}: warning in value').format( + self._name), exc_info=True) pass if error is None and warning is None: try: @@ -441,8 +445,12 @@ class Option(BaseOption): if context is not None: descr._valid_consistency(self, _value, context, _index) except ValueError as error: + log.debug(_('do_validation for {0}: error in consistency').format( + self._name), exc_info=True) pass except ValueWarning as warning: + log.debug(_('do_validation for {0}: warning in consistency').format( + self._name), exc_info=True) pass if warning: msg = _("warning on the value of the option {0}: {1}").format( @@ -1543,10 +1551,10 @@ def validate_callback(callback, callback_params, type_): if not isinstance(option, Option) and not \ isinstance(option, SymLinkOption): raise ValueError(_('{0}_params must have an option' - ' not a {0} for first argument' - ).format(type_, type(option))) + ' not a {0} for first argument' + ).format(type_, type(option))) if force_permissive not in [True, False]: raise ValueError(_('{0}_params must have a boolean' - ' not a {0} for second argument' - ).format(type_, type( - force_permissive))) + ' not a {0} for second argument' + ).format(type_, type( + force_permissive))) diff --git a/tiramisu/setting.py b/tiramisu/setting.py index a945a2c..d7925fa 100644 --- a/tiramisu/setting.py +++ b/tiramisu/setting.py @@ -17,6 +17,7 @@ # ____________________________________________________________ from time import time from copy import copy +from logging import getLogger import weakref from tiramisu.error import (RequirementError, PropertiesOptionError, ConstError, ConfigError) @@ -99,6 +100,9 @@ rw_append = set(['frozen', 'disabled', 'validator', 'hidden']) rw_remove = set(['permissive', 'everything_frozen', 'mandatory']) +log = getLogger('tiramisu') + + # ____________________________________________________________ class _NameSpace(object): """convenient class that emulates a module