Skip to main content

A custom Tkinter widget that displays Loguru log messages in real-time with support for styling and colors. Monitor application logs directly within your Tkinter GUI.

Project description

Loguru Tkinter Widget

A thread-safe, customizable Tkinter widget for displaying Loguru logs in real-time.

Loguru Tkinter Widget Demo

Features

  • Real-time log display in a Tkinter application
  • Thread-safe implementation using a queue
  • Customizable color modes for log levels
  • Adjustable maximum number of displayed log lines
  • Optional scrollbar
  • Easy integration with existing Loguru logger

Installation

  1. Ensure you have Python 3.6+ installed on your system.
  2. Install the required dependencies:
pip install tkloguru
  1. Copy the LoguruWidget class and related functions into your project.

Usage

Here's a basic example of how to use the Loguru Tkinter Widget:

import tkinter as tk
from loguru import logger
from loguru_widget import LoguruWidget, setup_logger

root = tk.Tk()
root.title("Loguru Tkinter Widget Demo")
root.geometry("600x400")

log_widget = LoguruWidget(root, show_scrollbar=True, color_mode='level', max_lines=1000)
log_widget.pack(expand=True, fill=tk.BOTH, padx=10, pady=10)

setup_logger(log_widget)

# Example log messages
logger.debug("This is a debug message")
logger.info("This is an info message")
logger.success("This is a success message")
logger.warning("This is a warning message")
logger.error("This is an error message")
logger.critical("This is a critical message")

root.mainloop()

Customization

The LoguruWidget class accepts several parameters for customization:

  • master: The parent Tkinter widget (required)
  • show_scrollbar: Boolean to show/hide the scrollbar (default: True)
  • color_mode: String to set the coloring mode ('level', 'message', or 'full') (default: 'level')
  • max_lines: Integer to set the maximum number of displayed log lines (default: 1000)

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Loguru for the excellent logging library
  • Tkinter for the GUI framework

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

tkloguru-0.1.2.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

tkloguru-0.1.2-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file tkloguru-0.1.2.tar.gz.

File metadata

  • Download URL: tkloguru-0.1.2.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Windows/10

File hashes

Hashes for tkloguru-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d13c231da165fe9c519c271050e754005e65b8406d4015db2a7c6f260bfe8399
MD5 0da4f95062d62565fc2465097632cd2f
BLAKE2b-256 e6c03308477002a53b7ec4a5f1a5ee1fd338c00771fdba4bab4ef7f94af3f029

See more details on using hashes here.

File details

Details for the file tkloguru-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: tkloguru-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Windows/10

File hashes

Hashes for tkloguru-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6793c18100226a5c797d60755a0de37f6b8ab056e036d417392064041f70aeda
MD5 c082a3b9b44a6f24cd44ccda0e1ffb11
BLAKE2b-256 959723de03eed35529743ad779b41bf8becd0148326eb0dd855b8dfbcae5a269

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page