Skip to main content

LogWatchdog

Python 3.7+ License: MIT PyPI version GitHub Build Log Watchdog Executable Windows PyInstaller

LogWatchdog is a powerful real-time log monitoring solution that detects exceptions and errors in log files, providing instant alerts through multiple notification channels.

🚀 Features

  • Real-time Log Monitoring: Monitor single files, multiple files, or entire folders
  • Smart Exception Detection: Configurable keywords for error detection
  • Multi-channel Notifications:
    • Custom flash popups (executables)
    • System tray notifications (script mode)
    • Email alerts with batch processing
    • Console output with detailed logging
  • Auto-configuration: Creates default config files automatically
  • Standalone Executable: No Python installation required on target systems
  • Batch Email Processing: Groups multiple errors from same file into single email
  • File Discovery: Automatic detection of new log files
  • Windows Optimized: Designed specifically for Windows 10/11 systems

📋 Requirements

  • Python 3.7+
  • Windows 10/11 (primary target)

🛠️ Installation

  1. Download the latest LogWatchdog.exe from releases
  2. Run the executable - it will create default configuration automatically
  3. Configure your settings in the generated log_config.ini file

Option 2: From Source

git clone https://github.com/pandiyarajk/logwatchdog.git
cd logwatchdog
pip install -r requirements.txt

Option 3: Build Your Own Executable

# Install dependencies
pip install -r requirements.txt

# Build executable
python build_exe.py

# Or use the simple batch file
build.bat

🚀 Quick Start

1. Run the Application

For Executable:

# Just run the executable - it creates config automatically
LogWatchdog.exe

For Script:

python -m logwatchdog.main

2. Auto-Generated Configuration

The application automatically creates log_config.ini with sensible defaults:

# LogWatchdog Configuration File
# =============================
# This file was automatically created by LogWatchdog.
# Modify the values below to customize your monitoring setup.

[monitoring]
monitor_mode = folder
log_folder_path = C:\path\to\execution\directory\logs
log_file_extensions = *.log,*.txt,*.evtx
file_discovery_interval = 30
empty_monitor_delay = 10

[notifications]
email_enabled = false
smtp_server = smtp.gmail.com
smtp_port = 587
receiver_group = admin@company.com
system_tray_notifications = true
batch_email_enabled = true

[alerts]
exception_keywords = Exception,Error,Failure,Fail,Fatal,Issue,Crash,Close,Cannot,Wrong,unsupported,not found,retry,terminated,disconnected

3. Email Setup (Optional)

Create .env file for email notifications:

EMAIL_USER=your-email@gmail.com
EMAIL_PASSWORD=your-app-password

Security Note: Never commit the .env file to version control.

📁 Monitoring Modes

  • Single File: Monitor one specific log file
  • Multiple Files: Monitor multiple specific log files simultaneously
  • Folder: Monitor all log files in a folder with automatic file detection

🔧 Configuration

Main Settings (log_config.ini)

  • Monitoring: Mode, file paths, discovery intervals
  • Notifications: Email settings, batch processing, system alerts
  • Alerts: Exception keywords and detection rules

Email Credentials (.env)

  • EMAIL_USER: Your email address
  • EMAIL_PASSWORD: Your email password or app password

🎯 Key Features Explained

Smart Notifications

For Executables:

  • Flash Popup: Custom red popup that auto-closes after 3 seconds
  • Taskbar Flashing: Console window flashes 3 times
  • System Sound: Windows beep plays with alerts
  • Console Output: Detailed logging information

For Scripts:

  • System Tray: Native Windows toast notifications
  • Fallback Support: Graceful degradation if notifications fail

Batch Email Processing

  • Groups Errors: Multiple errors from same file = single email
  • Rich Content: Error count, timestamps, detailed information
  • Configurable: Can be disabled via batch_email_enabled = false

Auto-Configuration

  • Creates Config: Automatically generates log_config.ini if missing
  • Sensible Defaults: Works out-of-the-box with minimal setup
  • Path Resolution: Smart detection of execution directory vs script directory

🛠️ Build Scripts

build_exe.py - Advanced Build Script

  • Dependency checking with proper package mapping
  • Clean build artifacts before building
  • Hidden imports for all modules
  • Data file inclusion (config files, README, etc.)
  • Debug mode for troubleshooting
  • Installer script generation

build.bat - Simple Windows Batch File

  • Automatic dependency installation
  • User-friendly interface
  • Error handling

📚 Documentation

🤝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for details.

📄 License

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

🔄 Changelog

See CHANGELOG.md for version history.


Made with ❤️ by Pandiyaraj Karuppasamy

LogWatchdog - Your Windows Log Monitoring Companion

Metadata

Release files for logwatchdog 1.0.2

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

Source distribution (sdist)

Source distribution for logwatchdog 1.0.2
File Size Uploaded Provenance
logwatchdog-1.0.2.tar.gz 21.2 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 42.1 kB

Release files / logwatchdog-1.0.2.tar.gz

Download URL logwatchdog-1.0.2.tar.gz
Size 21.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c196f0b920f04a158bb706af6aa84e9e6d5dbe967b9e15461da8ffa867bc2a50
BLAKE2b-256 checksum
How to use checksums
5b55d9bd44eb76afa00b39ce876827ee56ed7b715731d5df10f6844cca81b28f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release files / logwatchdog-1.0.2-py3-none-any.whl

Download URL logwatchdog-1.0.2-py3-none-any.whl
Size 21.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0e5c3b8004c9d40c0409b7d66becf0c10e8d596c1aa7b541432d0b12ae184229
BLAKE2b-256 checksum
How to use checksums
423dbf53cae6c95525597ecbd7571f8a1049d787908037f66187d1f0e0fdfb3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Security for logwatchdog 1.0.2

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