Prism – Colourise log files (with ANSI characters codes)
Project description
A command line log colouriser utility.
Installation
From Python package index (Pypi):
(sudo) pip install logprism
Optionally with watchdog:
(sudo) pip install logprism[watchdog]
or from Github:
(sudo) pip install watchdog # optional
git clone https://github.com/peterhil/prism.git
cd prism
(sudo) python setyp.py install
Dependencies
All dependencies can be installed with pip, usually by:
pip install some-package
Required (automatically handled by pip):
ordereddict (if using Python 2.6)
Optional (install manually with pip):
watchdog (watch files and directories with the -w option. Recommended for Python 2.x only – doesn’t work with Python 3)
Developers only:
pytest (test framework)
tox (continuous integration)
Usage examples
Colourise stdin:
tail -f /opt/local/var/log/couchdb/couch.log | prism
Grep some logs for messages with levels:
prism -g /var/log/*.log
Combine with grep command to find just specific levels:
grep -iE ‘(warn|error)’ /var/log/*.log | prism -g
Match multiple log levels per line:
prism -m /var/log/apache2/vhost*log
prism -m <(echo “Dribble me a debug or info lest I notice no create nor alter nor drop of your critical tables.”)
Watch for a whole directory of logs for changes (and new files):
prism -m -w /opt/local/var/log/nginx/
Some programs output normally to stderr, grab that output for prism:
python run.py 2>&1 | prism
Test
Run unit tests:
python setup.py test
Run continuous integration with tox (from an activated virtualenv, use tox -r to recreate CI envs):
tox
Todo
Show some tail lines when using -w: Make a line cache (count total lines with wc -l) from the end of the file using some blocksize.
Can be done with readlines() first. Then seek and read blocksize bytes from len(file)-blocksize and update cache.
Later enable ncurses scrolling for earlier lines?
Show n lines by default (a screenful / filecount?)
Project details
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 logprism-0.2.0.tar.gz
.
File metadata
- Download URL: logprism-0.2.0.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a6951cb16e7b3d5d6b5517a23d4895d101b7b469a277f7f7b25cc497d770c84 |
|
MD5 | 4e93c2e3d5f9bbdaf8fd597efee1897f |
|
BLAKE2b-256 | 596663389445372bd0e5132409884da0364d667885d1e41eb24c3d59cf0f8e39 |
File details
Details for the file logprism-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: logprism-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5fbe7db2892de0b59fb43a2bdb6a4077270a8d0802d3eb18d4f6cfc50fab7f0 |
|
MD5 | a5b979e6cdea4cbfed5c1c1278714c62 |
|
BLAKE2b-256 | 6064e653e0cb16b816d7e86d5ac27386939c97b1c64549fe320dbcfb2b1f15a8 |