Skip to content

Commit

Permalink
fix logging in notebooks, make default logging more verbose (#294)
Browse files Browse the repository at this point in the history
* Add first pass at notebook logging

* Appease stickler
  • Loading branch information
znicholls authored and danielhuppmann committed Nov 26, 2019
1 parent 5a2cdab commit 16c0ea5
Showing 1 changed file with 17 additions and 8 deletions.
25 changes: 17 additions & 8 deletions pyam/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,30 @@
from pyam.run_control import *
from pyam.iiasa import read_iiasa # noqa: F401

# in Jupyter notebooks: disable autoscroll, activate warnings
logger = logging.getLogger(__name__)
logger.addHandler(logging.NullHandler())

# in Jupyter notebooks: disable autoscroll and set logger to info
try:
get_ipython().run_cell_magic(u'javascript', u'',
u'IPython.OutputArea.prototype._should_scroll = function(lines) { return false; }')
warnings.simplefilter('default')

def custom_formatwarning(msg, category, filename, lineno, line=''):
# ignore everything except the message
return str(msg) + '\n'
warnings.formatwarning = custom_formatwarning
logger.setLevel(logging.INFO)

stderr_info_handler = logging.StreamHandler()
formatter = logging.Formatter('%(name)s - %(levelname)s: %(message)s')
stderr_info_handler.setFormatter(formatter)
logger.addHandler(stderr_info_handler)

log_msg = (
"Running in a notebook, adding stderr handler and setting "
"`{}` logging level to `logging.INFO`".format(__name__)
)
logger.info(log_msg)

except Exception:
pass

from ._version import get_versions
__version__ = get_versions()['version']
del get_versions

logging.getLogger(__name__).addHandler(logging.NullHandler())

0 comments on commit 16c0ea5

Please sign in to comment.