getHealth method

  1. @override
ServerHealth getHealth()
override

Get server health information

Implementation

@override
ServerHealth getHealth() {
  final now = DateTime.now();
  final uptime = now.difference(_startTime);

  return ServerHealth(
    isRunning: isConnected,
    connectedSessions: _sessions.length,
    registeredTools: _tools.length,
    registeredResources: _resources.length,
    registeredPrompts: _prompts.length,
    startTime: _startTime,
    uptime: uptime,
    metrics: {
      'counters': Map<String, int>.from(_metricCounters),
      'timers': _metricTimers.map(
        (key, timer) => MapEntry(key, timer.elapsed.inMilliseconds),
      ),
    },
  );
}