Skip to main content

A Dashboard Monitoring Tool for Multiple Python Applications

Project description

Fabric Monitor

🔍 Lightweight Python Backend Service Monitoring Framework

FeaturesInstallationQuick StartDocumentationContributing


Features

  • 🚀 Zero-Intrusion Integration - Integrates via middleware with minimal impact on existing code
  • 📊 Real-time Monitoring - Real-time collection of request data, response times, error rates, and more
  • 📝 Auto Documentation - Automatically extracts API documentation from code
  • 🎨 Visual Dashboard - Modern monitoring dashboard built with Vue3
  • 🔌 Extensible Architecture - Plugin-based design supporting FastAPI, Flask, and more frameworks
  • 💾 Multiple Storage Backends - Supports memory, SQLite(in dev), Redis(in dev), and other storage options

Installation

# Using uv
uv pip install fabric-monitor

# Using pip
pip install fabric-monitor

# Install with FastAPI support
uv pip install "fabric-monitor[fastapi]"

# Install with Flask support
uv pip install "fabric-monitor[flask]"

# Install all optional dependencies
uv pip install "fabric-monitor[all]"

Quick Start

FastAPI

from fastapi import FastAPI
from fabric import Fabric, FabricConfig

app = FastAPI()

# Initialize Fabric
fabric = Fabric(FabricConfig(app_name="My API"))
fabric.setup(app)

@app.get("/users")
async def get_users():
    return [{"id": 1, "name": "Alice"}]

# Visit http://localhost:8000/fabric to view the monitoring dashboard

Configuration Options

from fabric import FabricConfig

config = FabricConfig(
    app_name="My API",           # Application name
    prefix="/fabric",            # Dashboard route prefix
    enabled=True,                # Enable monitoring
    storage_type="memory",       # Storage type: memory | sqlite | redis
    max_requests=10000,          # Maximum request records
    retention_hours=24,          # Data retention time
    sample_rate=1.0,             # Sampling rate (0.0-1.0)
    exclude_paths=["/health"],   # Excluded paths
    enable_auth=False,           # Enable authentication
    auth_token=None,             # Authentication token
)

Documentation

For detailed documentation, see Development Documentation

Supported Frameworks

Framework Status
FastAPI ✅ Supported
Flask ✅ Supported
Django 📋 Planned

Supported Storage

Storage Status
Memory ✅ Supported
SQLite 🚧 In Development
Redis 🚧 In Development
MySQL 📋 Planned

License

MIT License

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

fabric_monitor-0.1.0.tar.gz (282.9 kB view details)

Uploaded Source

Built Distribution

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

fabric_monitor-0.1.0-py3-none-any.whl (293.8 kB view details)

Uploaded Python 3

File details

Details for the file fabric_monitor-0.1.0.tar.gz.

File metadata

  • Download URL: fabric_monitor-0.1.0.tar.gz
  • Upload date:
  • Size: 282.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for fabric_monitor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 85042ad488cd42d52aada8b7f9a250265cb83e704f08d9f19bf8f2e2d781c5f4
MD5 1c3046ae274fd07cdc68c7d1395da4fc
BLAKE2b-256 408a8a2e4d5bc2640e36b8ece5dbded2faf34f0593ac7368f934e852ce349490

See more details on using hashes here.

File details

Details for the file fabric_monitor-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: fabric_monitor-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 293.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for fabric_monitor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc5e19a895764f7e8cb685a19584f4a5e68c25568995571e44e820e3856f0843
MD5 b01102e9326818089dd50488d51e9ca5
BLAKE2b-256 aea9765e7679550b51c6f21caf3b558820008c0fb54439775edb35c22124cef4

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