<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def make_timing_logger(logger, precision=3, level=logging.DEBUG):
 """ Return a timing logger. Usage:: INFO:foobar:hello world in 1.00s """

    @contextmanager
    def log_time(msg, *args):
        """ Log `msg` and `*args` with (naive wallclock) timing information
        when the context block exits.
        """
        start_time = time.time()

        try:
            yield
        finally:
            message = "{} in %0.{}fs".format(msg, precision)
            duration = time.time() - start_time
            args = args + (duration,)
            logger.log(level, message, *args)

    return log_time