mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-09-22 17:45:09 -07:00
[Client/Server/Protocol] Surface live metrics in the Developer tab
Extend Response_GetServerStats with live counters from the in-process MetricsRegistry: cards in games, event loop stall totals/worst, total commands processed, average command time, active command types, and game-start count/duration. Add a repeated CommandStats message carrying per-command breakdowns (kind, extension number, resolved protobuf name, count, total ms) for every type that has seen at least one sample. Server-side cmdGetServerStats() populates all new fields after the existing DB uptime snapshot query, resolving protobuf extension names via the descriptor pool for human-readable labels like session/Command_Ping. Expand TabDeveloper with two tables: an overview section (existing DB stats plus the new live metrics) and a per-command breakdown table (Command / Count / Total ms / Avg ms) sorted by total_ms descending so the hottest commands surface first. Took 55 minutes Took 47 seconds
This commit is contained in:
parent
a542831aad
commit
26c0484297
4 changed files with 120 additions and 4 deletions
|
|
@ -1772,7 +1772,7 @@ Response::ResponseCode AbstractServerSocketInterface::cmdGetServerStats(const Co
|
|||
message ? pool->FindExtensionByNumber(message, number) : nullptr;
|
||||
if (extension) {
|
||||
label = QString::fromLatin1(MetricsRegistry::KindNames[kind]) + QStringLiteral("/") +
|
||||
QString::fromStdString(std::string(extension->name()));
|
||||
QString::fromStdString(std::string(extension->message_type()->name()));
|
||||
}
|
||||
}
|
||||
if (label.isEmpty()) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue