Skip to content

update Telemetry Configurations - #70

Merged
tanya732 merged 5 commits into
mainfrom
fix-telemetry-config
Aug 13, 2026
Merged

update Telemetry Configurations#70
tanya732 merged 5 commits into
mainfrom
fix-telemetry-config

Conversation

@tanya732

@tanya732 tanya732 commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR wires telemetry end-to-end and makes the core (auth0-api-java) and wrapper (auth0-springboot-api) report as independent identities, so adoption of each can be tracked separately.

What changed

  • New Telemetry value object (com.auth0.telemetry.Telemetry) - builds the Base64url-encoded Auth0-Client payload following the Auth0 SDK convention: {"name":..,"version":..,"env":{..}}. A wrapper reports itself as the top-level
    name and nests the core version in env. Uses java.specification.version for the env.java value.
  • TelemetryProvider reworked - now reads the core name/version and produces the default core Telemetry; exposes coreVersion() for wrappers to nest.
  • Identity carried on AuthOptions - new telemetry(...) builder + getter; the core default is used unless a wrapper overrides it.
  • Header attached at every outbound call in JWTValidator / OidcDiscoveryFetcher: OIDC discovery, the domain JWKS path, and the dynamic JWKS path.
  • Spring Boot wrapper identityAuth0AutoConfiguration injects SpringBootTelemetry.get(), reporting auth0-springboot-api with the core version nested under env.
  • Version filtering — added auth0-springboot-client-info.properties with ${version}substitution wired in the springbootbuild.gradle; corrected the core properties nametoauth0-api-java`.

Resulting header values (decoded, verified at runtime)

Core, standalone:
{"name":"auth0-api-java","version":"1.0.0-beta.1","env":{"java":"17"}}

Spring Boot wrapper:
{"name":"auth0-springboot-api","version":"1.0.0-beta.1","env":{"auth0-api-java":"1.0.0-beta.1","java":"17"}}

Notes

  • No behavior change to token validation; telemetry only adds a request header on
    calls already made to the issuer's own host (guarded by the existing
    JWKS-host-must-match-issuer check).
  • Adoption data will begin flowing once this ships and consumers upgrade.

Test plan

  • ./gradlew clean build passes
  • Confirm decoded Auth0-Client header matches the values above for both SDKs
  • Verify ${version} is substituted in both built *-client-info.properties

@tanya732
tanya732 requested a review from a team as a code owner August 12, 2026 07:12
@tanya732 tanya732 changed the title Fix telemetry config update Telemetry Configurations Aug 12, 2026
@tanya732
tanya732 merged commit 766428a into main Aug 13, 2026
6 checks passed
@tanya732 tanya732 mentioned this pull request Aug 17, 2026
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.

2 participants