track method

Future<void> track(
  1. String trackingEventName, {
  2. EvaluationContext? context,
  3. TrackingEventDetails? trackingDetails,
})

Tracking API (spec Section 6) - record a tracking event

Implementation

Future<void> track(
  String trackingEventName, {
  EvaluationContext? context,
  TrackingEventDetails? trackingDetails,
}) async {
  _metrics.trackingEvents++;

  try {
    final effectiveContext = _buildEffectiveContext(context);
    final trackingProvider = provider;
    await trackingProvider.track(
      trackingEventName,
      evaluationContext: effectiveContext,
      trackingDetails: trackingDetails,
    );
  } catch (e) {
    _logger.warning('Error sending tracking event "$trackingEventName": $e');
  }
}