Add broker and web throughput diagnostics
This commit is contained in:
@@ -182,6 +182,26 @@ static int show_counters(void)
|
||||
counter->events_queued,
|
||||
counter->events_popped,
|
||||
counter->event_drops);
|
||||
|
||||
session_broker_client_snapshot_t clients[SESSION_BROKER_MAX_CLIENTS];
|
||||
size_t count = session_broker_list_clients(clients, SESSION_BROKER_MAX_CLIENTS);
|
||||
printf("Active clients (since connect/clear; lost on disconnect; global totals retained):\n");
|
||||
printf("Output bytes: HWM <= %u; clear seeds pending; read = handed to transport.\n",
|
||||
(unsigned int)SESSION_BROKER_OUTPUT_SIZE);
|
||||
printf("Global dropped also includes unread output discarded on disconnect.\n");
|
||||
printf("ID type pending HWM UART queued read dropped\n");
|
||||
for (size_t index = 0; index < count; ++index) {
|
||||
const session_broker_client_snapshot_t *client = &clients[index];
|
||||
printf("%-10lu %-9s %-7u %-7u %" PRIu64 " %" PRIu64 " %" PRIu64 " %" PRIu64 "\n",
|
||||
(unsigned long)client->id,
|
||||
client_type_name(client->type),
|
||||
(unsigned int)client->output_bytes_pending,
|
||||
(unsigned int)client->counters.output_high_water_bytes,
|
||||
client->counters.uart_rx_bytes,
|
||||
client->counters.output_queued_bytes,
|
||||
client->counters.output_read_bytes,
|
||||
client->counters.output_dropped_bytes);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user