ipython-rtlogging is a tool that relies only on the Python standard library (except for IPython, Rich) and is used to capture and log the output streams of cells in real-time within IPython or IPython Notebook. It provides an optional solution to tackle the problem of losing cell outputs or not being able to monitor the progress of a running code after reconnecting to the Notebook.
doc.mp4
- ipython
- rich
Install the latest release with:
pip install ipython-rtloggingor download from https://github.com/wilmerwang/ipython-rtlogging and:
cd ipython-rtlogging
python3 setup.py installPlease cheack this notebook
Load rt_logging in IPython or IPython Notebook:
In [1]: %load_ext rt_loggingThen can use CLI to monitor the progress of a running code:
# Simaple usage
rt_logging
# OR Just list the running cell
rt_logging -lsThere are some extesion magic method:
In [2]: %%rt_logging?
Docstring:
::
%rt_logging [--no-stderr] [--no-stdout] [name] [buffering]
run the cell, print and redirect stdout, stderr calls.
positional arguments:
name File Name
buffering buffering size, 1 to select line buffering. Same as
open(buffering)
optional arguments:
--no-stderr Dont capture stderr.
--no-stdout Dont capture stdout.In [3]: %ls_logging?
Docstring:
::
%ls_logging [--ll]
list the all logging names
optional arguments:
--ll File Name to LoadIn [4]: %load_logging?
Docstring:
::
%load_logging [--name NAME] [--top TOP]
load and print logging data
optional arguments:
--name NAME File Names to Load
--top TOP top lines to LoadIn [5]: %rm_logging?
Docstring:
::
%rm_logging [--name NAME]
delete logging
optional arguments:
--name NAME File Name to LoadMIT