Skip to content

Commit f8d0f4a

Browse files
BenoitZugmeyerBeltranBulbarellaDD
authored andcommitted
🔉 report missing configuration options (#3832)
* update rum-events-schema * report missing configuration options as telemetry
1 parent 00b4358 commit f8d0f4a

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

‎packages/rum-core/src/domain/configuration/configuration.spec.ts‎

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -540,22 +540,18 @@ describe('serializeRumConfiguration', () => {
540540
remoteConfigurationProxy: 'config',
541541
plugins: [{ name: 'foo', getConfigurationTelemetry: () => ({ bar: true }) }],
542542
trackFeatureFlagsForEvents: ['vital'],
543-
profilingSampleRate: 0,
543+
profilingSampleRate: 42,
544544
propagateTraceBaggage: true,
545545
}
546546

547547
type MapRumInitConfigurationKey<Key extends string> = Key extends keyof InitConfiguration
548548
? MapInitConfigurationKey<Key>
549-
: Key extends 'workerUrl' | 'allowedTracingUrls' | 'excludedActivityUrls'
549+
: Key extends 'workerUrl' | 'allowedTracingUrls' | 'excludedActivityUrls' | 'remoteConfigurationProxy'
550550
? `use_${CamelToSnakeCase<Key>}`
551551
: Key extends 'trackLongTasks'
552552
? 'track_long_task' // oops
553-
: Key extends
554-
| 'applicationId'
555-
| 'subdomain'
556-
| 'remoteConfigurationProxy'
557-
| 'profilingSampleRate'
558-
| 'propagateTraceBaggage'
553+
: // The following options are not reported as telemetry. Please avoid adding more of them.
554+
Key extends 'applicationId' | 'subdomain'
559555
? never
560556
: CamelToSnakeCase<Key>
561557
// By specifying the type here, we can ensure that serializeConfiguration is returning an
@@ -569,6 +565,7 @@ describe('serializeRumConfiguration', () => {
569565
session_replay_sample_rate: 60,
570566
trace_sample_rate: 50,
571567
trace_context_injection: TraceContextInjection.ALL,
568+
propagate_trace_baggage: true,
572569
use_allowed_tracing_urls: true,
573570
selected_tracing_propagators: ['tracecontext', 'datadog'],
574571
use_excluded_activity_urls: true,
@@ -586,6 +583,8 @@ describe('serializeRumConfiguration', () => {
586583
plugins: [{ name: 'foo', bar: true }],
587584
track_feature_flags_for_events: ['vital'],
588585
remote_configuration_id: '123',
586+
use_remote_configuration_proxy: true,
587+
profiling_sample_rate: 42,
589588
})
590589
})
591590
})

‎packages/rum-core/src/domain/configuration/configuration.ts‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,7 @@ export function serializeRumConfiguration(configuration: RumInitConfiguration) {
394394
start_session_replay_recording_manually: configuration.startSessionReplayRecordingManually,
395395
trace_sample_rate: configuration.traceSampleRate,
396396
trace_context_injection: configuration.traceContextInjection,
397+
propagate_trace_baggage: configuration.propagateTraceBaggage,
397398
action_name_attribute: configuration.actionNameAttribute,
398399
use_allowed_tracing_urls:
399400
Array.isArray(configuration.allowedTracingUrls) && configuration.allowedTracingUrls.length > 0,
@@ -415,6 +416,8 @@ export function serializeRumConfiguration(configuration: RumInitConfiguration) {
415416
})),
416417
track_feature_flags_for_events: configuration.trackFeatureFlagsForEvents,
417418
remote_configuration_id: configuration.remoteConfigurationId,
419+
profiling_sample_rate: configuration.profilingSampleRate,
420+
use_remote_configuration_proxy: !!configuration.remoteConfigurationProxy,
418421
...baseSerializedConfiguration,
419422
} satisfies RawTelemetryConfiguration
420423
}

0 commit comments

Comments
 (0)