'progress(message, status = \'\', *args, level = logging.INFO, **kwargs) -> Progress
Creates a new progress logger which creates log records with log level
`level`.
Progress status can be updated using :meth:`Progress.status` and stopped
using :meth:`Progress.success` or :meth:`Progress.failure`.
If `term.term_mode` is enabled the progress logger will be animated.
The progress manager also functions as a context manager.  Using context
managers ensures that animations stop even if an exception is raised.
.. code-block:: python
with log.progress(\'Trying something...\') as p:
for i in range(10):
p.status("At %i" % i)
time.sleep(0.5)
x = 1/0'

def progress(self, message, status='', *args, **kwargs):

    level = self._getlevel(kwargs.pop('level', logging.INFO))
    return Progress(self, message, status, level, args, kwargs)
