feat(openfeature): implement flag evaluation metrics#7993
Conversation
Overall package sizeSelf size: 5.56 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | import-in-the-middle | 3.0.1 | 82.56 kB | 817.39 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe |
🎉 All green!❄️ No new flaky tests detected 🎯 Code Coverage (details) 🔗 Commit SHA: 43bb33c | Docs | Datadog PR Page | Give us feedback! |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #7993 +/- ##
==========================================
- Coverage 73.70% 73.50% -0.21%
==========================================
Files 783 784 +1
Lines 36369 36398 +29
==========================================
- Hits 26805 26753 -52
- Misses 9564 9645 +81 Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
sameerank
left a comment
There was a problem hiding this comment.
FYI we are currently ignoring this following system test for node: Test_FFE_Eval_Targeting_Key_Optional
At some point we may want to think about making it match the other tracers
Yeah. My understanding is that this should have been fixed in FFL-1730 but it was not |
7605a55 to
873af1c
Compare
|
(rebased on latest master to run system-tests) |
BenchmarksBenchmark execution time: 2026-04-27 18:18:30 Comparing candidate commit 43bb33c in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 1347 metrics, 97 unstable metrics. |
This comment is the last thing blocking the merge and @rochdev is unresponsive on both github and slack.
FFE team's current consensus is that it is a misreading of the code and does not warrant the block. We also use the same approach in Go, Java, Python, and .NET tracers.
I'm dismissing the review to unblock the progress. I'll wait for Monday eve before merging unless I hear any objections 🙏
Add an OpenFeature `finally` hook that emits a `feature_flag.evaluations` OTel counter for every flag evaluation, including error and short-circuit cases. The hook is a no-op when `otelMetricsEnabled` is false.
43bb33c
873af1c to
43bb33c
Compare
|
(rebased to fix merge conflict in tests — no code changes) |
Add an OpenFeature `finally` hook that emits a `feature_flag.evaluations` OTel counter for every flag evaluation, including error and short-circuit cases. The hook is a no-op when `otelMetricsEnabled` is false.
Add an OpenFeature `finally` hook that emits a `feature_flag.evaluations` OTel counter for every flag evaluation, including error and short-circuit cases. The hook is a no-op when `otelMetricsEnabled` is false.
What does this PR do?
Add an OpenFeature
finallyhook that emits afeature_flag.evaluationsOTel counter for every flag evaluation, including error and short-circuit cases. The hook is a no-op whenotelMetricsEnabledis false.Motivation
FFL-1944
Additional Notes
Tested locally against system-tests and it passes except a couple of cases affected by FFL-2064.