livelog is yet another Python logger.
Its main purpose is to provide live logging for situation where logging to console is not possible. For example working on a GUI, TUI, a software plugin or a script instanciated from a different shell.
It provides a Logger object for your code and a built-in reader to see your logs in real time from another shell.
Even if its overall behavior is opinionated it does offer some customization.
Demo
Installation
python3 -m pip install livelog
Logging
Basics
In your code, create a Logger instance with:
from livelog import Logger
logger = Logger()
Parameters
Logger takes multiple optional arguments:
file(str): Path for your logging file. Default is a file named "livelog.log" in your system tmp directory.level(str): Minimum level to be logged. Default is "DEBUG", you can also select "INFO", "WARNING", and "ERROR". Note that level filtering can also be done directly from the reader.enabled(bool): Whether logging is enabled or not. Default is True.erase(bool): Whether preexisting logging file should be erased or not. Default is True.
from livelog import Logger
logger = Logger(file= "/home/user/",
level = "INFO",
enabled = False,
erase = False)
Methods
Use the following methods to write log messages:
logger.debug("message")logger.info("message")logger.warn("message")logger.error("message")
from livelog import Logger
logger = Logger()
logger.debug("This is a debug message")
logger.info("This is an info message")
logger.warn("This is a warning message")
logger.error("This is an error message")
Attributes
You can get and set attributes after instantiation:
from livelog import Logger
logger = Logger(file="/tmp/file.log")
logger.debug("This will write to /tmp/file.log")
logger.file = "/tmp/another_file.log"
logger.debug("This will write to /tmp/another_file.log")
logger.level = "ERROR"
logger.debug("This debug message will not be written.")
logger.enabled = False
logger.error("Logging disabled. This error message will not be written.")
Singleton
livelog also provides a built-in singleton:
your_first_file.py
from livelog import LoggerSingleton
logger = LoggerSingleton(file="/tmp/file.log")
logger.debug("This will write to /tmp/file.log")
another_file.py
from livelog import LoggerSingleton
logger = LoggerSingleton()
# LoggerSingleton() returned the instance from your first file.
logger.debug("This will write to /tmp/file.log")
Reading
Although you can access to your logging file like any other, you can use the provided reader.
If you did not specify a file for Logger simply use:
python3 -m livelog
livelog will read in real time the default log file.
Options
-for--file- Set the path of your logging file-lor--level- Set the minimum log level to be read.--nocolors- Do not print colors
Example:
python3 -m livelog -f /tmp/myfile.log -l INFO --nocolors
Metadata
Release files for livelog 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| livelog-1.0.1.tar.gz | 19.1 kB | Without provenance | Details for livelog-1.0.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| livelog-1.0.1-py3-none-any.whl | Python 3 | none | any | Details for livelog-1.0.1-py3-none-any.whl |
Total release size: 38.4 kB
Release files / livelog-1.0.1.tar.gz
| Download URL | livelog-1.0.1.tar.gz |
|---|---|
| Size | 19.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fac082e129317f3a0ad3f943baff342ae111c526874018853b9d84b26d8e3d8d
|
|
BLAKE2b-256 checksum How to use checksums |
a9d64cb1dcd07160677d6fd71407a6a814df9ac1675bbfe08aea7b7d23db6ecc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.13
|
Release files / livelog-1.0.1-py3-none-any.whl
| Download URL | livelog-1.0.1-py3-none-any.whl |
|---|---|
| Size | 19.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5a5ff3b6d1ff173d86bef7101ea2e61aa0517a2ac38f5e9844515eb6caffeb97
|
|
BLAKE2b-256 checksum How to use checksums |
0ec5132486dd5c9a340d1d3e7a28deb5b622a5eeb2e9584aa2ae0a96dee1f29b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.13
|
Security for livelog 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.