Skip to content

feat: add provider_init_rate to telemetry#485

Open
nicklasl wants to merge 1 commit into
mainfrom
session/grumpy-shrike-js36
Open

feat: add provider_init_rate to telemetry#485
nicklasl wants to merge 1 commit into
mainfrom
session/grumpy-shrike-js36

Conversation

@nicklasl

@nicklasl nicklasl commented Jul 16, 2026

Copy link
Copy Markdown
Member

Summary

  • Adds ProviderInitRate message to TelemetryData proto (field 9) with count and map<string, string> labels
  • On the first telemetry flush after provider initialization, each provider includes a ProviderInitRate{count: 1, labels: {encryption: "true"/"false"}} entry
  • Subsequent flushes carry no init data
  • WASM-based providers (JS, Java, Go, Python) deserialize the flush output, add the entry, and re-serialize — only on the first flush
  • Rust native provider sets it directly on TelemetryData

Companion backend PR: https://ghe.spotify.net/konfidens/epx-flags-resolver/pull/1699

Test plan

  • JS demo app verified: first flush contains provider_init_rate with correct labels, subsequent flushes do not
  • Run provider test suites (make test per provider)
  • Docker build (docker build .)
  • Verify confidence_resolver_sdk_provider_init_rate_total metric appears in VictoriaMetrics after backend PR lands

🤖 Generated with Claude Code

@nicklasl
nicklasl force-pushed the session/grumpy-shrike-js36 branch from 70c9540 to 2481fc6 Compare July 17, 2026 12:48
@nicklasl nicklasl changed the title feat: add encryption_enabled to telemetry feat: add provider_init_rate to telemetry Jul 17, 2026
@nicklasl
nicklasl force-pushed the session/grumpy-shrike-js36 branch from 2481fc6 to 7b04cc7 Compare July 17, 2026 13:23
@nicklasl
nicklasl marked this pull request as ready for review July 17, 2026 13:24
@nicklasl
nicklasl force-pushed the session/grumpy-shrike-js36 branch 5 times, most recently from c21f0dc to a2f4e12 Compare July 17, 2026 14:08
On the first telemetry flush after provider initialization, include
a ProviderInitRate entry with labels describing the SDK configuration
(e.g. encryption: true/false). This lets the backend track which
customers have adopted encryption without tagging every metric.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@nicklasl
nicklasl force-pushed the session/grumpy-shrike-js36 branch from a2f4e12 to 3505a52 Compare July 17, 2026 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant