Skip to content

config

Add a formatted stream handler to the navis logger.

Called by default when navis is imported for the first time. To prevent this behaviour, set an environment variable: NAVIS_SKIP_LOG_SETUP=True.

Source code in navis/config.py
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
def default_logging():
    """Add a formatted stream handler to the `navis` logger.

    Called by default when navis is imported for the first time.
    To prevent this behaviour, set an environment variable:
    `NAVIS_SKIP_LOG_SETUP=True`.
    """
    logger.setLevel(logging.INFO)
    if len(logger.handlers) == 0:
        sh = logging.StreamHandler()
        sh.setLevel(logging.DEBUG)
        # Create formatter and add it to the handlers
        formatter = logging.Formatter(
            '%(levelname)-5s : %(message)s (%(name)s)')
        sh.setFormatter(formatter)
        logger.addHandler(sh)
Source code in navis/config.py
57
58
59
60
def get_logger(name: str):
    if skip_log_setup:
        return logging.getLogger(name)
    return logger

Test if navis is run in a Jupyter notebook.

Source code in navis/config.py
129
130
131
def is_jupyter():
    """Test if navis is run in a Jupyter notebook."""
    return _type_of_script() == 'jupyter'

Remove all handlers from the navis logger.

It may be preferable to skip navis' default log handler being added in the first place. Do this by setting an environment variable before the first import: NAVIS_SKIP_LOG_SETUP=True.

Source code in navis/config.py
41
42
43
44
45
46
47
48
49
def remove_log_handlers():
    """Remove all handlers from the `navis` logger.

    It may be preferable to skip navis' default log handler being added in the
    first place.
    Do this by setting an environment variable before the first import:
    `NAVIS_SKIP_LOG_SETUP=True`.
    """
    logger.handlers.clear()