Skip to content

[FFL-1720] Evaluation Logging: Event Schema & Data Models#3144

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 3 commits intofeature/flags-evaluations-loggingfrom
typo/FFL-1720-pr1-schema-models
Jan 29, 2026
Merged

[FFL-1720] Evaluation Logging: Event Schema & Data Models#3144
gh-worker-dd-mergequeue-cf854d[bot] merged 3 commits intofeature/flags-evaluations-loggingfrom
typo/FFL-1720-pr1-schema-models

Conversation

@typotter
Copy link
Contributor

@typotter typotter commented Jan 22, 2026

📚 Evaluation Logging Stacked Pull Requests 📚

🔲 Integration & Configuration (PR #3147)
🔲 Storage & Network Infrastructure (PR #3146)
🔲 Aggregation Engine & Test Utilities (PR #3145)
👉 Event Schema & Data Models (PR #3144)
☑️ Evaluations Subfeature (PR #3159)
typo/FFL-1720-android-kotlin-sdk-emits (feature branch)

Datadog Internal
🎟️ Ticket: FFL-1720 - Implement Evaluation Logging for Android SDK

What does this PR do?

Introduces the BatchedEvaluationEvent data model and JSON schema for aggregated feature flag evaluation events. This establishes the contract for evaluation logging that will be sent to Datadog's /api/v2/flagevaluations intake endpoint.

Motivation

We need to implement Evaluation Logging to provide comprehensive visibility into all feature flag evaluations, including defaults, errors, and successful matches. This goes beyond exposure logging by capturing aggregated metrics about evaluation frequency, error rates, and runtime default usage across all flags.

Description

This PR adds:

  • batched-evaluation-event-schema.json: JSON schema defining the structure of aggregated evaluation events
  • BatchedEvaluationEvent model: Generated Kotlin data class with nested types (Identifier, Context, Error, etc.)

The schema follows the Evaluation Logging specification requirements for event structure, field naming, optional field handling, and timestamp conventions.

Additional Notes

Review checklist (to be filled by reviewers)

  • Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
  • Make sure you discussed the feature or bugfix with the maintaining team in an Issue
  • Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

Copy link
Contributor Author

typotter commented Jan 22, 2026

@datadog-official
Copy link

datadog-official bot commented Jan 22, 2026

🎯 Code Coverage
Patch Coverage: 100.00%
Overall Coverage: 65.95% (-4.64%)

View detailed report

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: b85617d | Docs | Datadog PR Page | Was this helpful? Give us feedback!

@codecov-commenter
Copy link

codecov-commenter commented Jan 22, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 70.81%. Comparing base (2f91cc3) to head (b85617d).

Additional details and impacted files
@@                          Coverage Diff                          @@
##           typo/flags-evaluations-subfeature    #3144      +/-   ##
=====================================================================
- Coverage                              70.89%   70.81%   -0.08%     
=====================================================================
  Files                                    901      901              
  Lines                                  33175    33175              
  Branches                                5596     5596              
=====================================================================
- Hits                                   23518    23492      -26     
- Misses                                  8102     8111       +9     
- Partials                                1555     1572      +17     

see 35 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

dd-oleksii
dd-oleksii previously approved these changes Jan 23, 2026
Copy link
Member

@dd-oleksii dd-oleksii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🙈

  • Comprehensive tests: JSON serialization/deserialization validation
  • Public API surface: Updates to expose the new event model

leoromanovsky
leoromanovsky previously approved these changes Jan 24, 2026
Copy link

@leoromanovsky leoromanovsky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

verified schema matches backend

@typotter typotter changed the base branch from feature/flags-evaluations-logging to typo/flags-evaluations-subfeature January 27, 2026 17:56
@typotter typotter mentioned this pull request Jan 27, 2026
3 tasks
@typotter typotter force-pushed the typo/FFL-1720-pr1-schema-models branch 3 times, most recently from c924067 to a031b97 Compare January 28, 2026 06:34
@typotter typotter marked this pull request as ready for review January 28, 2026 06:34
@typotter typotter requested a review from a team as a code owner January 28, 2026 06:34
@typotter typotter force-pushed the typo/FFL-1720-pr1-schema-models branch 2 times, most recently from ddeaaa3 to 75827d0 Compare January 28, 2026 07:27
@typotter typotter changed the base branch from typo/flags-evaluations-subfeature to feature/flags-evaluations-logging January 28, 2026 16:15
@typotter typotter dismissed stale reviews from leoromanovsky and dd-oleksii January 28, 2026 16:15

The base branch was changed.

@typotter typotter changed the base branch from feature/flags-evaluations-logging to typo/flags-evaluations-subfeature January 28, 2026 16:17
@typotter typotter force-pushed the typo/FFL-1720-pr1-schema-models branch 2 times, most recently from 1c0c827 to 00b8f55 Compare January 28, 2026 16:30
@typotter typotter force-pushed the typo/FFL-1720-pr1-schema-models branch from 00b8f55 to 7dba2fe Compare January 28, 2026 17:01
@typotter typotter requested a review from 0xnm January 29, 2026 03:55
Base automatically changed from typo/flags-evaluations-subfeature to feature/flags-evaluations-logging January 29, 2026 04:46
@typotter
Copy link
Contributor Author

/merge

@gh-worker-devflow-routing-ef8351
Copy link

gh-worker-devflow-routing-ef8351 bot commented Jan 29, 2026

View all feedbacks in Devflow UI.

2026-01-29 05:17:41 UTC ℹ️ Start processing command /merge


2026-01-29 05:17:46 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in feature/flags-evaluations-logging is approximately 55m (p90).


2026-01-29 06:07:35 UTC ℹ️ MergeQueue: This merge request was merged

@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot merged commit 4618637 into feature/flags-evaluations-logging Jan 29, 2026
26 checks passed
@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot deleted the typo/FFL-1720-pr1-schema-models branch January 29, 2026 06:07
@typotter typotter mentioned this pull request Jan 30, 2026
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants