Metadata-Version: 2.1
Name: cutelog
Version: 2.0.2
Summary: GUI for Python's logging module
Home-page: https://github.com/busimus/cutelog/
Author: Alexander Bus
Author-email: busfromrus@gmail.com
License: MIT
Download-URL: https://github.com/Busimus/cutelog/archive/2.0.2.zip
Keywords: log,logging,gui,qt
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: X11 Applications :: Qt
Classifier: Environment :: MacOS X :: Cocoa
Classifier: Environment :: Win32 (MS Windows)
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: System :: Logging
Classifier: Topic :: System :: Monitoring
Requires-Python: >=3.5
Requires-Dist: QtPy
Requires-Dist: PyQt5 ; platform_system == "Darwin"
Requires-Dist: PyQt5 ; platform_system == "Windows"

.. contents:: Table of contents
   :depth: 2

=======
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_).

The program is in beta: it's lacking some features and may be unstable, but it works.
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
* 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:

.. code-block :: python

    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 <https://github.com/busimus/cutelog>`_.


