Skip to main content

Comprehensive Windows log monitoring and management solution

Project description

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

Option 1: Standalone Executable (Recommended)

  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

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

logwatchdog-1.0.2.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

logwatchdog-1.0.2-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

File details

Details for the file logwatchdog-1.0.2.tar.gz.

File metadata

  • Download URL: logwatchdog-1.0.2.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for logwatchdog-1.0.2.tar.gz
Algorithm Hash digest
SHA256 c196f0b920f04a158bb706af6aa84e9e6d5dbe967b9e15461da8ffa867bc2a50
MD5 4b5a92b5fedf20d140d32dc4cc8eb5b1
BLAKE2b-256 5b55d9bd44eb76afa00b39ce876827ee56ed7b715731d5df10f6844cca81b28f

See more details on using hashes here.

File details

Details for the file logwatchdog-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: logwatchdog-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 21.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for logwatchdog-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0e5c3b8004c9d40c0409b7d66becf0c10e8d596c1aa7b541432d0b12ae184229
MD5 4dd7004a49ef3d07b227b547860c07cf
BLAKE2b-256 423dbf53cae6c95525597ecbd7571f8a1049d787908037f66187d1f0e0fdfb3e

See more details on using hashes here.

Supported by

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