recordEvent method
Future<void>
recordEvent({
- required String name,
- required TelemetrySeverity severity,
- required String message,
- Map<
String, dynamic> context = const {},
override
Records a telemetry event (log entry).
Use for significant events (errors, warnings, debug info). Returns Future<void> to allow for async repository operations.
Implementation
@override
Future<void> recordEvent({
required String name,
required TelemetrySeverity severity,
required String message,
Map<String, dynamic> context = const {},
}) async {
if (name.isEmpty) {
throw ArgumentError('Event name cannot be empty');
}
if (message.isEmpty) {
throw ArgumentError('Event message cannot be empty');
}
await _repository.exportEvent(
TelemetryEvent(
name: name,
severity: severity,
message: message,
timestamp: DateTime.now().toUtc(),
context: context,
),
);
}