def setup_logger()

in ssiog/training.py [0:0]


def setup_logger(args):
    global logger
    logger = logging.getLogger(args.label)

    # No propagation in the logger hierarchy.
    logger.propagate = False

    # Log level.
    log_level = getattr(logging, args.log_level)
    logger.setLevel(log_level)

    # Log destination, where to write?
    handler = logging.FileHandler(args.log_file) if args.log_file else logging.StreamHandler()

    # Beautify.
    formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(filename)s:%(lineno)d - %(message)s')
    handler.setFormatter(formatter)
    logger.addHandler(handler)

    logger.info("Logger initialized.")