diff --git a/trino/logging.py b/trino/logging.py index 866c3e92..64c64ab2 100644 --- a/trino/logging.py +++ b/trino/logging.py @@ -11,12 +11,20 @@ # limitations under the License. import logging +from typing import Optional LEVEL = logging.INFO # TODO: provide interface to use ``logging.dictConfig`` -def get_logger(name: str, log_level: int = LEVEL) -> logging.Logger: +def get_logger(name: str, log_level: Optional[int]) -> logging.Logger: logger = logging.getLogger(name) - logger.setLevel(log_level) + # We must not call setLevel by default except on the root logger otherwise + # we cannot change log levels for all modules by changing level of the root + # logger + if log_level is not None: + logger.setLevel(log_level) return logger + +# set default log level to LEVEL +trino_root_logger = get_logger('trino', LEVEL)