Table of Contents

Class ServerStatsReport

Namespace
EchoHub.Core.Models
Assembly
EchoHub.Core.dll

A snapshot of server activity over one reporting window, produced periodically by the stats-report background job. Each report is logged as pretty-printed JSON and persisted for historical trend analysis. The window is "since the previous report" (or since startup for the first report of a run).

public class ServerStatsReport
Inheritance
ServerStatsReport
Inherited Members

Constructors

ServerStatsReport()

public ServerStatsReport()

Properties

ActiveMembers

Distinct users who sent at least one message during the window.

public int ActiveMembers { get; set; }

Property Value

int

Bans

Users banned during the window.

public int Bans { get; set; }

Property Value

int

BytesUploaded

Total bytes across all attachments uploaded during the window.

public long BytesUploaded { get; set; }

Property Value

long

Connections

Session connects during the window (per-connection, across SignalR + IRC).

public int Connections { get; set; }

Property Value

int

Disconnections

Session disconnects during the window ("members left" sessions).

public int Disconnections { get; set; }

Property Value

int

FilesUploaded

Attachments (files/images/audio) uploaded during the window.

public int FilesUploaded { get; set; }

Property Value

int

GeneratedAt

When this report was generated (equals PeriodEnd).

public DateTimeOffset GeneratedAt { get; set; }

Property Value

DateTimeOffset

Id

public Guid Id { get; set; }

Property Value

Guid

Kicks

Users kicked during the window.

public int Kicks { get; set; }

Property Value

int

MessagesSent

Messages sent during the window.

public int MessagesSent { get; set; }

Property Value

int

NewMembers

Accounts registered during the window ("new members joined").

public int NewMembers { get; set; }

Property Value

int

OnlineNow

Distinct users online at window end.

public int OnlineNow { get; set; }

Property Value

int

PeakOnline

Peak distinct users online observed during the window.

public int PeakOnline { get; set; }

Property Value

int

PeriodEnd

End of the reporting window.

public DateTimeOffset PeriodEnd { get; set; }

Property Value

DateTimeOffset

PeriodStart

Start of the reporting window.

public DateTimeOffset PeriodStart { get; set; }

Property Value

DateTimeOffset

TotalMembers

Total registered (unique) members at window end.

public int TotalMembers { get; set; }

Property Value

int

WindowHours

Length of the reporting window in hours.

public double WindowHours { get; set; }

Property Value

double