Skip to content

Fluent DI & Custom Tables

Pre-release
Pre-release

Choose a tag to compare

@NoubarKay NoubarKay released this 19 Aug 18:27
· 4 commits to master since this release

馃殌 MiniOps v0.2.0

Release Date: 19 Aug 2025


馃専 Highlights

  • Improved Nucleus monitoring package with fluent DI configuration.
  • Support for custom table names for request logs and aggregates.
  • Added RequestAggregates table for historical per-second metrics.
  • Real-time request logging and dashboard updates remain fully supported.

馃洜 Features Implemented

  • Fluent Nucleus configuration:
    builder.Services.AddNucleus(op =>
        op.UseDatabase(NucleusDatabaseTypes.SQLServer, "<connection-string>")
          .WithSchema("Nucleus")
          .EnableSeedDatabase(true)
          .SetLogTtl(60)
          .SetBatchFlushInterval(1)
          .UseCustomTableNames("RequestMetrics", "RequestAggregates")
    );```
  • Optional custom table names for:
    • Request logs
    • Request aggregates
  • Background service NucleusRequestLogService:
    • Flushes logs to database in batches.
    • Updates aggregates table per second for total, success, and failed requests.
    • Broadcasts real-time metrics via SignalR.
  • Dashboard graph with streaming updates remains functional.
  • Internal improvements for faster bulk insert and aggregation processing.

鈿狅笍 Known Limitations

  • Dashboard is currently only functional for the live graph and is EXTREMELY LIMITED IN FUNCTIONALITY.
  • Metrics cards, request ticker, recent requests table, and nodes status panel are not yet populated in real-time.
  • SignalR may lag under extremely high traffic. Adjust BatchFlushIntervalSeconds in NucleusDbContext for optimal performance.

馃搶 Notes

  • Future updates will include:
    • Full metrics cards with live values
    • Request ticker
    • Recent requests table
    • Node health status panel
  • Ensure BatchFlushIntervalSeconds is configured properly to balance performance vs. real-time responsiveness.

馃摝 Installation

dotnet add package Nucleus --version 0.1.0