Llamachant.ExpressApp.Monitoring.Blazor 25.2.7.2

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Llamachant.ExpressApp.Monitoring.Blazor --version 25.2.7.2
                    
NuGet\Install-Package Llamachant.ExpressApp.Monitoring.Blazor -Version 25.2.7.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Llamachant.ExpressApp.Monitoring.Blazor" Version="25.2.7.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Llamachant.ExpressApp.Monitoring.Blazor" Version="25.2.7.2" />
                    
Directory.Packages.props
<PackageReference Include="Llamachant.ExpressApp.Monitoring.Blazor" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Llamachant.ExpressApp.Monitoring.Blazor --version 25.2.7.2
                    
#r "nuget: Llamachant.ExpressApp.Monitoring.Blazor, 25.2.7.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Llamachant.ExpressApp.Monitoring.Blazor@25.2.7.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Llamachant.ExpressApp.Monitoring.Blazor&version=25.2.7.2
                    
Install as a Cake Addin
#tool nuget:?package=Llamachant.ExpressApp.Monitoring.Blazor&version=25.2.7.2
                    
Install as a Cake Tool

Llamachant.ExpressApp.Monitoring.Blazor

Part of the Llamachant Framework - a set of reusable modules for DevExpress eXpressApp Framework (XAF) applications.

Overview

Llamachant.ExpressApp.Monitoring.Blazor provides real-time user session monitoring for XAF Blazor applications, giving administrators visibility into active users, session status, and server diagnostics.

Key Features

  • Session Monitoring - Track active user sessions with real-time status (Active, Idle, Disconnected), login time, session duration, and idle time
  • Connection Details - View IP address, browser info, connection count, and heartbeat status per user
  • Activity Tracking - Monitor current page, page views, action count, and per-user activity timelines
  • Recent Actions - View a global action history showing recent actions across all users
  • Server Diagnostics - Access server memory usage, GC memory, active session count, and uptime
  • Session Termination - Administrators can force-terminate user sessions directly from the Active Users view
  • Real-Time Updates - Debounced event system automatically refreshes the Active Users view when sessions change
  • Circuit-Aware Cleanup - Automatic subscription and resource cleanup when Blazor circuits close

Setup

Register the module in your application builder:

builder.Modules
    .AddLlamachantFrameworkMonitoringBlazorModule(options =>
    {
        options.ShowSessionInfo = true;         // Session status, login time, duration, idle time
        options.ShowConnectionInfo = true;      // IP address, browser info, connection count, heartbeat
        options.ShowActivityInfo = true;        // Current page, page views, action count, timeline
        options.ShowServerInfo = true;          // Server memory, GC memory, session count, uptime
        options.MaxActivityCount = 20;          // Max timeline entries per user session
        options.MaxGlobalActivityCount = 100;   // Max entries in global recent action history
        options.AllowTerminatingSessions = true; // Allow admins to force-terminate sessions
        options.AllowViewingRecentActions = true; // Allow viewing the recent actions popup
    });

All options have sensible defaults, so you can also register with no configuration:

builder.Modules
    .AddLlamachantFrameworkMonitoringBlazorModule();

Architecture

The module registers the following services:

Service Lifetime Purpose
ActiveUserService Singleton Core service tracking all user sessions, activity, and action history
ActiveUserServiceOptions Singleton Configuration options for the monitoring module
ConnectionInfoHolder Scoped Captures IP address, browser info, and circuit ID per connection
NavigationTracker Scoped Tracks page navigation events per circuit
MonitoredCircuitHandlerProxy Scoped Intercepts Blazor circuit lifecycle events (connect, disconnect, reconnect)

How It Works

  1. User logs in and ActiveUserService.UserConnected() registers the session
  2. MonitoredCircuitHandlerProxy captures circuit lifecycle events (connect, disconnect, reconnect)
  3. NavigationTracker monitors page navigation changes
  4. ActiveUsersActionTrackingController records action execution across all controllers
  5. The Active Users ListView displays session data via non-persistent objects
  6. Real-time updates are delivered through debounced circuit-aware subscriptions

Requirements

  • .NET 8.0 and higher
  • DevExpress XAF v25.2 or later

License

This package is distributed under the MIT License. Note: While the NuGet package is free to use, the source code is not open source.

Support & Contact

Need help or want to learn more about our tools and services? Visit www.llamachant.com/docs or contact us.


Llamachant Technology Ltd. Expert consulting and solutions for DevExpress XAF developers.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
26.1.2.1-beta 86 5/30/2026
25.2.7.2 72 6/3/2026
25.2.7.1 94 5/7/2026
25.2.6.1 129 4/8/2026
25.2.5.2 120 3/26/2026
25.2.5.1 118 3/4/2026