exportSnapshot method

  1. @override
void exportSnapshot(
  1. GlobalMetrics gm
)
override

Implementation

@override
void exportSnapshot(GlobalMetrics gm) {
  _printedChannelsHeader = false;
  final sep = '─' * width;

  var sent = 0, recv = 0, dropped = 0, closed = 0;
  var tsOk = 0, tsFail = 0, trOk = 0, trEmpty = 0;
  for (final s in gm.channels.values) {
    sent += s.sent;
    recv += s.recv;
    dropped += s.dropped;
    closed += s.closed;
    tsOk += s.trySendOk;
    tsFail += s.trySendFail;
    trOk += s.tryRecvOk;
    trEmpty += s.tryRecvEmpty;
  }

  _showTry = !(tsOk == 0 && tsFail == 0 && trOk == 0 && trEmpty == 0);

  final title = _bold('GLOBAL ${gm.ts.toIso8601String()}', useColor);
  print('\n$title');
  print(_dim(sep, useColor));

  void row(String k, String v) => print('${_padR(k, 18)}  ${_padL(v, 12)}');
  row('Channels', _fmtInt(gm.channels.length));
  row('Sent', _fmtInt(sent));
  row('Recv', _fmtInt(recv));
  if (!compact) {
    row('Dropped', _fmtInt(dropped));
    row('Closed', _fmtInt(closed));
  }

  print(_dim(sep, useColor));
  _printChannelsHeader();
}