BloomTelemetryEvent.fromJson constructor
Constructs a BloomTelemetryEvent from a JSON json map.
Implementation
factory BloomTelemetryEvent.fromJson(Map<String, dynamic> json) {
return BloomTelemetryEvent(
eventId: json['eventId'] as String? ?? '',
timestamp: json['timestamp'] != null
? DateTime.tryParse(json['timestamp'].toString()) ?? DateTime.now().toUtc()
: DateTime.now().toUtc(),
level: json['level'] != null
? BloomErrorLevel.fromJson(json['level'].toString())
: BloomErrorLevel.error,
exceptionType: json['exceptionType'] as String? ?? 'UnknownException',
message: json['message'] as String? ?? '',
stackTrace: json['stackTrace'] as String?,
fingerprint: (json['fingerprint'] as List<dynamic>?)?.map((e) => e.toString()).toList() ?? [],
fingerprintHash: json['fingerprintHash'] as String?,
context: json['context'] is Map ? Map<String, dynamic>.from(json['context'] as Map) : {},
breadcrumbs: (json['breadcrumbs'] as List<dynamic>?)
?.map((e) => BloomBreadcrumb.fromJson(Map<String, dynamic>.from(e as Map)))
.toList() ??
[],
app: json['app'] is Map ? Map<String, dynamic>.from(json['app'] as Map) : {},
runtime: json['runtime'] is Map ? Map<String, dynamic>.from(json['runtime'] as Map) : {},
device: json['device'] is Map ? Map<String, dynamic>.from(json['device'] as Map) : {},
);
}