kupferbootstrap/logger.py
2022-05-07 15:28:06 +02:00

27 lines
788 B
Python

import click
import coloredlogs
import logging
import sys
def setup_logging(verbose: bool):
level_colors = coloredlogs.DEFAULT_LEVEL_STYLES | {'info': {'color': 'magenta', 'bright': True}, 'debug': {'color': 'blue', 'bright': True}}
field_colors = coloredlogs.DEFAULT_FIELD_STYLES | {'asctime': {'color': 'white', 'faint': True}}
level = logging.DEBUG if verbose else logging.INFO
coloredlogs.install(
stream=sys.stdout,
fmt='%(asctime)s %(levelname)s: %(message)s',
datefmt='%Y-%m-%d %H:%M:%S',
level=level,
level_styles=level_colors,
field_styles=field_colors,
)
logging.debug('Logging set up.')
verbose_option = click.option(
'-v',
'--verbose',
is_flag=True,
help='Enables verbose logging',
)