|
1 | 1 | import { Event, SentryRequest, Session } from '@sentry/types';
|
| 2 | +import { getGlobalObject } from '@sentry/utils'; |
2 | 3 |
|
3 | 4 | import { API } from './api';
|
4 | 5 |
|
5 | 6 | /** Creates a SentryRequest from an event. */
|
6 | 7 | export function sessionToSentryRequest(session: Session, api: API): SentryRequest {
|
| 8 | + const { name, version } = getGlobalObject().__SENTRY__?.sdkInfo || {}; |
7 | 9 | const envelopeHeaders = JSON.stringify({
|
8 | 10 | sent_at: new Date().toISOString(),
|
| 11 | + sdk: { name, version }, |
9 | 12 | });
|
10 | 13 | const itemHeaders = JSON.stringify({
|
11 | 14 | type: 'session',
|
@@ -39,9 +42,12 @@ export function eventToSentryRequest(event: Event, api: API): SentryRequest {
|
39 | 42 | // deserialization. Instead, we only implement a minimal subset of the spec to
|
40 | 43 | // serialize events inline here.
|
41 | 44 | if (useEnvelope) {
|
| 45 | + const { name, version } = getGlobalObject().__SENTRY__?.sdkInfo || {}; |
| 46 | + |
42 | 47 | const envelopeHeaders = JSON.stringify({
|
43 | 48 | event_id: event.event_id,
|
44 | 49 | sent_at: new Date().toISOString(),
|
| 50 | + sdk: { name, version }, |
45 | 51 | });
|
46 | 52 | const itemHeaders = JSON.stringify({
|
47 | 53 | type: event.type,
|
|
0 commit comments