Flutter Live Logger Dashboard

A comprehensive web dashboard for real-time Flutter application monitoring and log analysis. Built with Flutter Web, this dashboard provides live log streaming, performance analytics, and powerful filtering capabilities.

pub package License: MIT

Features

πŸ”΄ Real-time Log Streaming - Live WebSocket-based log monitoring
πŸ“Š Performance Analytics - CPU, memory, and throughput visualization
🎯 Advanced Filtering - Multi-level log filtering with search
πŸ’Ύ Data Persistence - SQLite-based storage with Drift ORM
🌐 Web Dashboard - Responsive Flutter Web interface
πŸš€ High Performance - Handles 555,556+ logs/second

Dashboard Components

  • Log Display Widget: Real-time log entries with syntax highlighting
  • Performance Dashboard: Interactive charts for system metrics
  • Analytics Widget: Statistical insights and trend analysis
  • Filter Widget: Advanced log querying and search
  • Settings Widget: Configuration and preferences management

Getting Started

Prerequisites

Installation

Add this package to your Flutter project:

dependencies:
  flutter_live_logger_dashboard: ^0.2.0

Then run:

flutter pub get

Usage

Basic Server Setup

Create a simple dashboard server:

import 'package:flutter_live_logger_dashboard/flutter_live_logger_dashboard.dart';

void main() async {
  // Start the dashboard server
  final server = DashboardServer();
  await server.start(
    httpPort: 7580,
    webSocketPort: 7581,
  );
  
  print('Dashboard server running on http://localhost:7580');
}

Flutter Web Dashboard

Create a Flutter Web dashboard:

import 'package:flutter/material.dart';
import 'package:flutter_live_logger_dashboard/flutter_live_logger_dashboard.dart';

void main() {
  runApp(MyDashboardApp());
}

class MyDashboardApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Log Dashboard',
      home: DashboardPage(
        serverUrl: 'ws://localhost:7581',
      ),
    );
  }
}

Connecting Your Flutter App

In your main Flutter application:

import 'package:flutter_live_logger/flutter_live_logger.dart';

void main() {
  // Configure logger to send to dashboard
  FlutterLiveLogger.configure(
    transports: [
      HttpTransport(
        url: 'http://localhost:7580/logs',
        enableBatch: true,
      ),
    ],
  );
  
  runApp(MyApp());
}

Performance

  • Throughput: 555,556 logs/second processing capability
  • Memory Usage: <10MB RAM usage with efficient garbage collection
  • Real-time Latency: <100ms from log generation to dashboard display
  • Concurrent Connections: Supports 100+ simultaneous WebSocket clients

Examples

Check out the example_server.dart and simple_server.dart files for complete implementation examples.

Contributing

Contributions are welcome! Please read our Contributing Guide for details.

License

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