@@ -11,7 +11,14 @@ import {
1111 SessionEnvelope ,
1212 SessionItem ,
1313} from '@sentry/types' ;
14- import { BaggageObj , createBaggage , createEnvelope , dsnToString , serializeBaggage } from '@sentry/utils' ;
14+ import {
15+ BaggageObj ,
16+ createBaggage ,
17+ createEnvelope ,
18+ dsnToString ,
19+ dropUndefinedKeys ,
20+ serializeBaggage ,
21+ } from '@sentry/utils' ;
1522
1623/** Extract sdk info from from the API metadata */
1724function getSdkMetadataForEnvelopeHeader ( metadata ?: SdkMetadata ) : SdkInfo | undefined {
@@ -110,18 +117,20 @@ export function createEventEnvelope(
110117 } ;
111118
112119 if ( eventType === 'transaction' ) {
113- const baggage = createBaggage ( {
114- environment : event . environment ,
115- release : event . release ,
116- transaction : event . transaction ,
117- userid : event . user && event . user . id ,
118- // TODO user.segment currently doesn't exist explicitly in interface User (just as a record key)
119- usersegment : event . user && event . user . segment ,
120- } as BaggageObj ) ;
120+ const baggage = dropUndefinedKeys (
121+ createBaggage ( {
122+ environment : event . environment && event . environment ,
123+ release : event . release ,
124+ transaction : event . transaction ,
125+ userid : event . user && event . user . id ,
126+ // TODO user.segment currently doesn't exist explicitly in interface User (just as a record key)
127+ usersegment : event . user && event . user . segment ,
128+ } as BaggageObj ) ,
129+ ) ;
121130
122131 envelopeHeaders = {
123132 ...envelopeHeaders ,
124- baggage : serializeBaggage ( baggage ) ,
133+ ... ( Object . keys ( baggage [ 0 ] ) . length > 0 && { baggage : serializeBaggage ( baggage ) } ) ,
125134 } ;
126135 }
127136
0 commit comments