import logging
import logging.handlers
-import sys
+import sys as _sys
+import os as _os
_multiprocess_shared_ = True
__version__ = '0.10' # match sawsim version
+PYSAWSIM_LOG_LEVEL_MSG = """
+You can control the log verbosity with the `PYSAWSIM_LOG_LEVEL`
+environmental variable. Set it to one of the level names in Python's
+`logging` module (e.g. `DEBUG`).
+"""
+
def log():
return logging.getLogger('pysawsim')
-def add_stderr_log_handler(level=logging.DEBUG):
+def add_stderr_log_handler(level=None):
+ if level == None:
+ level_string = _os.environ.get('PYSAWSIM_LOG_LEVEL', 'WARNING')
+ try:
+ level = getattr(logging, level_string)
+ except AttributeError:
+ _sys.stderr.write(
+ 'unrecognized PYSAWSIM_LOG_LEVEL: %s\n' % level_string)
+ raise
_log = log()
_log.setLevel(level)
console = logging.StreamHandler()
console.setFormatter(formatter)
_log.addHandler(console)
-add_stderr_log_handler(logging.WARNING)
+add_stderr_log_handler()