Skip to main content

cutelog

This is a graphical log viewer for Python’s standard logging module. It can be targeted with a SocketHandler with no additional setup (see Usage). cutelog is cross-platform, although it’s mainly written and optimized for Linux.

Features

  • Allows any number of simultaneous connections

  • Customizable look of log levels and columns, with presets for each

  • Filtering based on level and namespace, as well as filtering by searching

  • Search through all records or only through filtered ones

  • Display extra fields under the message with Extra mode

  • View exception tracebacks or messages in a separate window

  • Dark theme (with its own set of colors for levels)

  • Pop tabs out of the window, merge records of multiple tabs into one

  • Save/load records to/from a file in JSON format

Installation

If you’re using Linux, install PyQt5 (or PySide2) from your package manager before installing cutelog (package name is probably python3-pyqt5 or python-pyqt5). Or just run pip install pyqt5 to install it from pip, which is sub-optimal.

$ pip install --upgrade cutelog

Or install the latest development version from the source:

$ pip install git+https://github.com/busimus/cutelog.git

Requirements

  • Python 3.5 (or newer)

  • PyQt5 (preferably 5.6 or newer) or PySide2

  • QtPy

Usage

  1. Start cutelog

  2. Put the following into your code:

import logging
from logging.handlers import SocketHandler

log = logging.getLogger('Root logger')
log.setLevel(1)  # to send all messages to cutelog
socket_handler = SocketHandler('127.0.0.1', 19996)  # default listening address
log.addHandler(socket_handler)
log.info('Hello world!')

Afterwards it’s recommended to designate different loggers for different parts of your program with log_2 = log.getChild(“Child logger”). This will create “log namespaces” which allow you to filter out messages from various subsystems of your program.

Code, issues, changelog

Visit the project’s GitHub page.

Metadata

Release files for cutelog 2.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for cutelog 2.2.0
File Interpreter ABI Platform Actions
cutelog-2.2.0-py3-none-any.whl Python 3 none any Details for cutelog-2.2.0-py3-none-any.whl

Release files / cutelog-2.2.0-py3-none-any.whl

Download URL cutelog-2.2.0-py3-none-any.whl
Size 154.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3a79e6dd56f54851152949ab0f7f95d822382073c31ccd32206485a0b173f9d6
BLAKE2b-256 checksum
How to use checksums
a43cc2e253ae115717e711c7975389d8b8b302bce5c5b101dd740713335ce9d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.3

Security for cutelog 2.2.0

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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page