logEvent method
Future<void>
logEvent(
{ - required AnalyticsEvent e,
})
override
Implementation
@override
Future<void> logEvent({required AnalyticsEvent e}) async {
if (!isReady) {
logger.warning(this, '$providerName: Sentry Analytics is not ready');
return;
}
if (!isAnalyticsEnabled) {
logger.debug(
this,
'$providerName: Analytics is disabled, event will not be logged',
);
return;
}
logger.debug(
this,
'$providerName: Logging event: ${e.name} and parameters: ${e.parameters}',
);
await Sentry.addBreadcrumb(
Breadcrumb(
message: e.name,
category: 'analytics',
level: SentryLevel.info,
timestamp: DateTime.now(),
data:
e.parameters?.map((key, value) => MapEntry(key, value.toString())),
),
);
logger.debug(
this,
'$providerName: Event logged successfully',
);
}