Log and Flow tracking made easy with Python
Project description
lognflow
.. image:: https://img.shields.io/pypi/v/lognflow.svg :target: https://pypi.python.org/pypi/lognflow
.. image:: https://img.shields.io/travis/arsadri/lognflow.svg :target: https://travis-ci.com/arsadri/lognflow
.. image:: https://readthedocs.org/projects/lognflow/badge/?version=latest :target: https://lognflow.readthedocs.io/en/latest/?version=latest :alt: Documentation Status
Log and Flow tracking made easy with Python. You can install it by:
.. code-block:: python pip install lognflow
A simple program to use it would be similar to the following:
.. code-block:: python from lognflow import lognflow import numpy as np vec = np.random.rand(100)
logger = lognflow('c:\\test\\')
logger('This is a test for lognflow and log_var')
logger.log_single('vec', vec)
The logviewer is also very useful.
.. code-block:: python from lognflow import logviewer
logged = logviewer('c:\\test\\some_log\')
vec = logged.get_single('vec')
The printprogress makes a pretty nice progress bar.
.. code-block:: python from lognflow import printprogress
N = 100
pbar = printprogress(N)
for _ in range(N):
# do_something()
pbar()
In this package we use a folder on the HDD to generate files and folders in typical formats such as numpy npy and npz, png, ... to log. A log viewer is also availble to turn an already logged flow into variables. Obviously, it will read the folders and map them for you, which is something you could spend hours to do by yourself. Also there is the nicest progress bar, that you can easily understand and use or implement yourself when you have the time.
Looking at most logging packages online, you see that you need to spend a lot of time learning how to use them and realizing how they work. Especially when you have to deal with http servers and ... which will be a huge pain when working for companies who have their own HPC.
This is why lognflow is handy and straight forward.
Many tests are avialable in the tests directory.
- Free software: GNU General Public License v3
- Documentation: https://lognflow.readthedocs.io.
Features
- lognflow puts all the logs into a directory on your pc
- lognflow makes it easy to log text or simple plots.
- logviewer makes it easy to load variables or directories
- printprogress is one of the best progress bars in Python.
Credits ^^^^^^^^
This package was created with Cookiecutter_ and the audreyr/cookiecutter-pypackage
_ project template.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _audreyr/cookiecutter-pypackage
: https://github.com/audreyr/cookiecutter-pypackage
History
0.1.0 (2022-11-16)
- First release on PyPI.
0.3.0 (2022-12-19)
- Very consistent and easy-to-handle interface
0.3.2 (2022-12-27)
- log your dictionary.
0.5.2 (2023-01-11)
- logger call takes txt only for the main_log
- main_log name can have no time_stamp
- All logs can be force_flush = True.
- del is well implemented.
0.5.3 (2023-03-19)
- use logger.log_single('aName', aDict) to save a dictionary using numpy.savez
- time_in_file_name has been changed to time_tag, sorry there! but early stages.
- time_tag is True in the constructor, but could always be set to False
- All tests passed!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file lognflow-0.5.3.tar.gz
.
File metadata
- Download URL: lognflow-0.5.3.tar.gz
- Upload date:
- Size: 29.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 947ece7e4d3f0ea6d90a3e5cfacbf2d06e63347a4c48f7ade8bfe0cdab443751 |
|
MD5 | 9439c5c6f7079a20b51f6b60165a300a |
|
BLAKE2b-256 | 8f7a3cacc7ee25ebdc3b7be1bc6f458ffe1b52c7ef9e52992f6811f9497cdef0 |
File details
Details for the file lognflow-0.5.3-py2.py3-none-any.whl
.
File metadata
- Download URL: lognflow-0.5.3-py2.py3-none-any.whl
- Upload date:
- Size: 20.8 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6176fbf36964eeb455ad14b2e5e8d82d5ccd896e1df24b5f8e95f6227068600 |
|
MD5 | bc258138145d0e3fce7433abf605470e |
|
BLAKE2b-256 | 32b60f42fbbd526f1871580548bea270ccd93680976c0e2a1adf7a8a48f83d4f |