Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Monitoring and information service for the ePIC streaming workflow testbed

License

Notifications You must be signed in to change notification settings

BNLNPPS/swf-monitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

swf-monitor

Monitoring and information service for the ePIC streaming workflow testbed.

System Overview

The application is built on Django infrastructure and comprises two main web apps, real-time messaging, and PostgreSQL backend.

Core Components

  1. Monitor App (monitor_app): Primary user-facing component

    • Browser UI: Server-side rendered dashboard for viewing agent statuses with Django session authentication
    • REST API: Programmatic interface with token-based authentication and OpenAPI schema
    • MCP Integration: Model Context Protocol endpoint for LLM interaction
  2. ActiveMQ Integration: Built-in message queue connectivity

    • Automatic Listening: Connects to ActiveMQ automatically when Django starts
    • SSE REST Forwarding: Server-Sent Events streaming of ActiveMQ messages via HTTPS
  3. PostgreSQL Database: Data store for all persistent system information including agents, logs, runs, STF files, FastMon files, workflows, and application state

Key Features

  • 🖥️ Real-time Dashboard - Agent status monitoring with live updates
  • 🔗 REST API - Complete CRUD operations with OpenAPI documentation
  • 🤖 MCP Integration - Model Context Protocol for natural language interaction via LLM
  • 📡 SSE Message Streaming - Real-time ActiveMQ message forwarding via HTTPS with Django Channels and Redis
  • 📊 Centralized Logging - Agent log collection with swf-common-lib integration
  • 🔐 Authentication - Token-based API access and web session management
  • 📈 ActiveMQ Integration - Automatic message queue connectivity and monitoring
  • 🧪 Comprehensive Testing - 88+ tests across API, UI, and integration scenarios

Documentation

📚 Complete technical documentation in docs/ directory:

Guide Description Use Case
Setup Guide Installation, configuration, and development setup Getting started
Production Deployment Complete Apache production deployment guide Production operations
API Reference REST API, WebSocket, database schema, authentication Integration
MCP Integration Model Context Protocol for LLM interaction Natural language queries
Test System Testing approach, structure, and best practices Quality assurance

Quick Links

Quick Examples

Basic Setup

# See docs/SETUP_GUIDE.md for complete installation
python manage.py runserver          # Start web interface (includes ActiveMQ integration)

Testing

See Test System documentation for comprehensive testing guide.

Development

Requirements

  • Python 3.9+
  • PostgreSQL for data persistence
  • ActiveMQ for agent messaging (optional)

Architecture Notes

  • Django web framework with Channels for WebSocket support
  • Model Context Protocol (MCP) for LLM-based system interaction
  • Token-based REST API with comprehensive OpenAPI documentation

See Setup Guide for detailed development environment configuration.


For complete technical documentation and implementation details, see the docs/ directory.

About

Monitoring and information service for the ePIC streaming workflow testbed

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5