recordTiming method

  1. @override
Future<ResultDart<void, TelemetryException>> recordTiming({
  1. required String name,
  2. required Duration duration,
  3. Map<String, String> attributes = const {},
})
override

Records a timing metric.

Returns ResultDart with success or TelemetryException on error.

Implementation

@override
Future<ResultDart<void, TelemetryException>> recordTiming({
  required String name,
  required Duration duration,
  Map<String, String> attributes = const {},
}) async {
  final metric = Metric(
    name: name,
    value: duration.inMilliseconds.toDouble(),
    unit: 'ms',
    timestamp: DateTime.now().toUtc(),
    attributes: attributes,
  );

  await _repository.exportMetric(metric);
  return const Success(unit);
}