harness / ff-dotnet-server-sdk

.net Server SDK for integrating with Harness Feature Flag service.
https://harness.io/
Apache License 2.0
5 stars 10 forks source link

FFM-10602 Separate `Analytics` into `EvaluationAnalytics` and `TargetAnalytics` #102

Closed erdirowlands closed 9 months ago

erdirowlands commented 9 months ago

What

Previously, we didn't differentiate between evaluation and target metrics in terms of storing and processing them as separate entities. This meant that we could not use the global target feature to shrink evaluation metrics. The global target feature means that a unique evaluation metric is a combination of unique flag + variation values, where as before the target would have been used.
This change separates out the metric types as follows:

  1. The original single cache is used. I have not created a separate cache.
  2. The metric types are differentiated using a subclassing approach, where we store each type in the same cache.
  3. When we come to process the metrics, we check the type accordingly.

Also enables global target feature.

Testing