Skip to content

Commit 7ac026f

Browse files
Moved error stack to the first frame.
1 parent c45ba72 commit 7ac026f

File tree

6 files changed

+31
-38
lines changed

6 files changed

+31
-38
lines changed

packages/core/src/domain/extension/extensionUtils.ts

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,22 @@ export const EXTENSION_PREFIXES = ['chrome-extension://', 'moz-extension://']
22

33
// Base case, the page has the SDK in the init and the error stack is in the page.
44
export const STACK_WITH_INIT_IN_PAGE = `Error
5-
at Object.<anonymous> (http://localhost:8080/datadog-rum.js:6385:32)
6-
at callMonitored (http://localhost:8080/datadog-rum.js:3925:19)
75
at Object.init (http://localhost:8080/datadog-rum.js:3919:16)
86
at http://localhost:8080/:10:14`
97

108
// Base case for extension, the extension has the SDK in the init and the error stack is in the extension.
119
export const STACK_WITH_INIT_IN_EXTENSION = `Error
12-
at Object.<anonymous> (chrome-extension://abcdef/dist/contentScript.js:5416:28)
13-
at callMonitored (chrome-extension://abcdef/dist/contentScript.js:259:17)
1410
at Object.init (chrome-extension://abcdef/dist/contentScript.js:254:14)
1511
at chrome-extension://abcdef/dist/contentScript.js:13304:14
1612
at chrome-extension://abcdef/dist/contentScript.js:13315:3`
1713

1814
export const STACK_WITH_INIT_IN_EXTENSION_FIREFOX = `Error
19-
at Object.<anonymous> (moz-extension://abcdef/dist/contentScript.js:5416:28)
20-
at callMonitored (moz-extension://abcdef/dist/contentScript.js:259:17)
2115
at Object.init (moz-extension://abcdef/dist/contentScript.js:254:14)
2216
at moz-extension://abcdef/dist/contentScript.js:13304:14
2317
at moz-extension://abcdef/dist/contentScript.js:13315:3`
2418

2519
// Edge case, the extension patches a function from the page.
2620
export const STACK_WITH_INIT_IN_PAGE_PATCHED = `Error
27-
at Object.‹anonymous> (http://localhost:8080/datadog-rum.js:6385:32)
28-
at callMonitored (http://localhost:8080/datadog-rum.js:3925:19)
2921
at Object.init (http://localhost:8080/datadog-rum.js:3919:16)
3022
at <anonymous>:2:23
3123
at Object.apply (chrome-extension://hgijklmn/WXkq0oBd.js:10:4624)
@@ -49,9 +41,9 @@ export function isUnsupportedExtensionEnvironment(windowLocation: string, stack:
4941
return false
5042
}
5143

52-
// Consider only the 3rd frame line, which is the init caller.
44+
// Consider only the 1st frame line, which is the init caller.
5345
const frameLines = stack.split('\n').filter((l) => /^\s*at\s+/.test(l))
54-
const target = frameLines[2] || ''
46+
const target = frameLines[0] || ''
5547

5648
return containsExtensionUrl(target)
5749
}

packages/logs/src/boot/logsPublicApi.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import {
1111
createTrackingConsentState,
1212
defineContextMethod,
1313
startBufferingData,
14+
callMonitored,
1415
} from '@datadog/browser-core'
1516
import type { LogsInitConfiguration } from '../domain/configuration'
1617
import type { HandlerType } from '../domain/logger'
@@ -293,10 +294,10 @@ export function makeLogsPublicApi(startLogsImpl: StartLogs): LogsPublicApi {
293294
return makePublicApi<LogsPublicApi>({
294295
logger: mainLogger,
295296

296-
init: monitor((initConfiguration) => {
297+
init: (initConfiguration) => {
297298
const errorStack = new Error().stack
298-
strategy.init(initConfiguration, errorStack)
299-
}),
299+
callMonitored(() => strategy.init(initConfiguration, errorStack))
300+
},
300301

301302
setTrackingConsent: monitor((trackingConsent) => {
302303
trackingConsentState.update(trackingConsent)

packages/rum-core/src/boot/rumPublicApi.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -564,10 +564,10 @@ export function makeRumPublicApi(
564564
})
565565

566566
const rumPublicApi: RumPublicApi = makePublicApi<RumPublicApi>({
567-
init: monitor((initConfiguration) => {
567+
init: (initConfiguration) => {
568568
const errorStack = new Error().stack
569-
strategy.init(initConfiguration, rumPublicApi, errorStack)
570-
}),
569+
callMonitored(() => strategy.init(initConfiguration, rumPublicApi, errorStack))
570+
},
571571

572572
setTrackingConsent: monitor((trackingConsent) => {
573573
trackingConsentState.update(trackingConsent)

test/apps/base-extension/yarn.lock

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,37 +7,37 @@ __metadata:
77

88
"@datadog/browser-core@file:../../../packages/core/package.tgz::locator=rum-testing-extension%40workspace%3A.":
99
version: 6.19.0
10-
resolution: "@datadog/browser-core@file:../../../packages/core/package.tgz#../../../packages/core/package.tgz::hash=ff3797&locator=rum-testing-extension%40workspace%3A."
11-
checksum: 10c0/c0ae3d4d42c3d12f9a390744b466b3aa7ccd1d49fb98f3577e0ebabd200cf49908c7a977ccce74ff9fe81add25ca451614d47a12bdaa833639307e01fdfb9175
10+
resolution: "@datadog/browser-core@file:../../../packages/core/package.tgz#../../../packages/core/package.tgz::hash=79c435&locator=rum-testing-extension%40workspace%3A."
11+
checksum: 10c0/6726d31693ae43ccdadfdea3a4d4aefecefbd43ca4dfa6d2c36378978b04549bb003eba291391fa7417773ef11bd767fc5a6ba7534486a8c642b732bd59398ea
1212
languageName: node
1313
linkType: hard
1414

1515
"@datadog/browser-logs@file:../../../packages/logs/package.tgz::locator=rum-testing-extension%40workspace%3A.":
1616
version: 6.19.0
17-
resolution: "@datadog/browser-logs@file:../../../packages/logs/package.tgz#../../../packages/logs/package.tgz::hash=dd8df9&locator=rum-testing-extension%40workspace%3A."
17+
resolution: "@datadog/browser-logs@file:../../../packages/logs/package.tgz#../../../packages/logs/package.tgz::hash=52ad94&locator=rum-testing-extension%40workspace%3A."
1818
dependencies:
1919
"@datadog/browser-core": "npm:6.19.0"
2020
peerDependencies:
2121
"@datadog/browser-rum": 6.19.0
2222
peerDependenciesMeta:
2323
"@datadog/browser-rum":
2424
optional: true
25-
checksum: 10c0/3fa9ca742601bbebe4d805bc9df4e90b6f15509639b5e0447518805cf4831f51b0be6d978c52838dc2f708ea62df1ef9651347f9081e8b6cbd8cf2ccf5ceaa36
25+
checksum: 10c0/28b48ff6446ce291e227de4d1aefdcc25ba723ac2e6df8bac359c22a96f592d1bd1fde07c91df678d6f519983e95449deeea7ce0c714cbe5e172be80999b9ed6
2626
languageName: node
2727
linkType: hard
2828

2929
"@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz::locator=rum-testing-extension%40workspace%3A.":
3030
version: 6.19.0
31-
resolution: "@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz#../../../packages/rum-core/package.tgz::hash=a91cd0&locator=rum-testing-extension%40workspace%3A."
31+
resolution: "@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz#../../../packages/rum-core/package.tgz::hash=5beecc&locator=rum-testing-extension%40workspace%3A."
3232
dependencies:
3333
"@datadog/browser-core": "npm:6.19.0"
34-
checksum: 10c0/796d9d7c7e42de2471364ca43485544e1f88801027d0570664063322aab6de0b8d3cf69ec4b0bd86f30fa4a5651d0663fb28a14d227d023ac3698dbb929b0088
34+
checksum: 10c0/995a6a9c4d6e13a0345b47d447b01a704eeaca3bc445130439f67358eff3ca422d0f9648a6c938f3709e75b393605e1b76a0a73a13fc601d750ba846a643c172
3535
languageName: node
3636
linkType: hard
3737

3838
"@datadog/browser-rum@file:../../../packages/rum/package.tgz::locator=rum-testing-extension%40workspace%3A.":
3939
version: 6.19.0
40-
resolution: "@datadog/browser-rum@file:../../../packages/rum/package.tgz#../../../packages/rum/package.tgz::hash=ee172a&locator=rum-testing-extension%40workspace%3A."
40+
resolution: "@datadog/browser-rum@file:../../../packages/rum/package.tgz#../../../packages/rum/package.tgz::hash=d7abd0&locator=rum-testing-extension%40workspace%3A."
4141
dependencies:
4242
"@datadog/browser-core": "npm:6.19.0"
4343
"@datadog/browser-rum-core": "npm:6.19.0"
@@ -46,7 +46,7 @@ __metadata:
4646
peerDependenciesMeta:
4747
"@datadog/browser-logs":
4848
optional: true
49-
checksum: 10c0/2fa8d3113512df9ee7f9320cec1eadb1c59d7296d4451ae572d34298379a3a06b71f890fd78e191b2e2e91ee39bff91bb859aa1892cf950383b20875b34a6a78
49+
checksum: 10c0/b635968d1bfe63c072e648322e187e5f71ce60783118e6a9cd5bf65dddf12b3d8452b0a52e8514b9f56395b69fc30fa335ef61d4eb7166bdb224019365660387
5050
languageName: node
5151
linkType: hard
5252

test/apps/react-router-v6-app/yarn.lock

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,17 @@ __metadata:
77

88
"@datadog/browser-core@file:../../../packages/core/package.tgz::locator=react-router-v6-app%40workspace%3A.":
99
version: 6.19.0
10-
resolution: "@datadog/browser-core@file:../../../packages/core/package.tgz#../../../packages/core/package.tgz::hash=ff3797&locator=react-router-v6-app%40workspace%3A."
11-
checksum: 10c0/c0ae3d4d42c3d12f9a390744b466b3aa7ccd1d49fb98f3577e0ebabd200cf49908c7a977ccce74ff9fe81add25ca451614d47a12bdaa833639307e01fdfb9175
10+
resolution: "@datadog/browser-core@file:../../../packages/core/package.tgz#../../../packages/core/package.tgz::hash=79c435&locator=react-router-v6-app%40workspace%3A."
11+
checksum: 10c0/6726d31693ae43ccdadfdea3a4d4aefecefbd43ca4dfa6d2c36378978b04549bb003eba291391fa7417773ef11bd767fc5a6ba7534486a8c642b732bd59398ea
1212
languageName: node
1313
linkType: hard
1414

1515
"@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz::locator=react-router-v6-app%40workspace%3A.":
1616
version: 6.19.0
17-
resolution: "@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz#../../../packages/rum-core/package.tgz::hash=a91cd0&locator=react-router-v6-app%40workspace%3A."
17+
resolution: "@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz#../../../packages/rum-core/package.tgz::hash=5beecc&locator=react-router-v6-app%40workspace%3A."
1818
dependencies:
1919
"@datadog/browser-core": "npm:6.19.0"
20-
checksum: 10c0/796d9d7c7e42de2471364ca43485544e1f88801027d0570664063322aab6de0b8d3cf69ec4b0bd86f30fa4a5651d0663fb28a14d227d023ac3698dbb929b0088
20+
checksum: 10c0/995a6a9c4d6e13a0345b47d447b01a704eeaca3bc445130439f67358eff3ca422d0f9648a6c938f3709e75b393605e1b76a0a73a13fc601d750ba846a643c172
2121
languageName: node
2222
linkType: hard
2323

@@ -48,7 +48,7 @@ __metadata:
4848

4949
"@datadog/browser-rum@file:../../../packages/rum/package.tgz::locator=react-router-v6-app%40workspace%3A.":
5050
version: 6.19.0
51-
resolution: "@datadog/browser-rum@file:../../../packages/rum/package.tgz#../../../packages/rum/package.tgz::hash=ee172a&locator=react-router-v6-app%40workspace%3A."
51+
resolution: "@datadog/browser-rum@file:../../../packages/rum/package.tgz#../../../packages/rum/package.tgz::hash=d7abd0&locator=react-router-v6-app%40workspace%3A."
5252
dependencies:
5353
"@datadog/browser-core": "npm:6.19.0"
5454
"@datadog/browser-rum-core": "npm:6.19.0"
@@ -57,7 +57,7 @@ __metadata:
5757
peerDependenciesMeta:
5858
"@datadog/browser-logs":
5959
optional: true
60-
checksum: 10c0/2fa8d3113512df9ee7f9320cec1eadb1c59d7296d4451ae572d34298379a3a06b71f890fd78e191b2e2e91ee39bff91bb859aa1892cf950383b20875b34a6a78
60+
checksum: 10c0/b635968d1bfe63c072e648322e187e5f71ce60783118e6a9cd5bf65dddf12b3d8452b0a52e8514b9f56395b69fc30fa335ef61d4eb7166bdb224019365660387
6161
languageName: node
6262
linkType: hard
6363

test/apps/vanilla/yarn.lock

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,37 +7,37 @@ __metadata:
77

88
"@datadog/browser-core@file:../../../packages/core/package.tgz::locator=app%40workspace%3A.":
99
version: 6.19.0
10-
resolution: "@datadog/browser-core@file:../../../packages/core/package.tgz#../../../packages/core/package.tgz::hash=ff3797&locator=app%40workspace%3A."
11-
checksum: 10c0/c0ae3d4d42c3d12f9a390744b466b3aa7ccd1d49fb98f3577e0ebabd200cf49908c7a977ccce74ff9fe81add25ca451614d47a12bdaa833639307e01fdfb9175
10+
resolution: "@datadog/browser-core@file:../../../packages/core/package.tgz#../../../packages/core/package.tgz::hash=79c435&locator=app%40workspace%3A."
11+
checksum: 10c0/6726d31693ae43ccdadfdea3a4d4aefecefbd43ca4dfa6d2c36378978b04549bb003eba291391fa7417773ef11bd767fc5a6ba7534486a8c642b732bd59398ea
1212
languageName: node
1313
linkType: hard
1414

1515
"@datadog/browser-logs@file:../../../packages/logs/package.tgz::locator=app%40workspace%3A.":
1616
version: 6.19.0
17-
resolution: "@datadog/browser-logs@file:../../../packages/logs/package.tgz#../../../packages/logs/package.tgz::hash=dd8df9&locator=app%40workspace%3A."
17+
resolution: "@datadog/browser-logs@file:../../../packages/logs/package.tgz#../../../packages/logs/package.tgz::hash=52ad94&locator=app%40workspace%3A."
1818
dependencies:
1919
"@datadog/browser-core": "npm:6.19.0"
2020
peerDependencies:
2121
"@datadog/browser-rum": 6.19.0
2222
peerDependenciesMeta:
2323
"@datadog/browser-rum":
2424
optional: true
25-
checksum: 10c0/3fa9ca742601bbebe4d805bc9df4e90b6f15509639b5e0447518805cf4831f51b0be6d978c52838dc2f708ea62df1ef9651347f9081e8b6cbd8cf2ccf5ceaa36
25+
checksum: 10c0/28b48ff6446ce291e227de4d1aefdcc25ba723ac2e6df8bac359c22a96f592d1bd1fde07c91df678d6f519983e95449deeea7ce0c714cbe5e172be80999b9ed6
2626
languageName: node
2727
linkType: hard
2828

2929
"@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz::locator=app%40workspace%3A.":
3030
version: 6.19.0
31-
resolution: "@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz#../../../packages/rum-core/package.tgz::hash=a91cd0&locator=app%40workspace%3A."
31+
resolution: "@datadog/browser-rum-core@file:../../../packages/rum-core/package.tgz#../../../packages/rum-core/package.tgz::hash=5beecc&locator=app%40workspace%3A."
3232
dependencies:
3333
"@datadog/browser-core": "npm:6.19.0"
34-
checksum: 10c0/796d9d7c7e42de2471364ca43485544e1f88801027d0570664063322aab6de0b8d3cf69ec4b0bd86f30fa4a5651d0663fb28a14d227d023ac3698dbb929b0088
34+
checksum: 10c0/995a6a9c4d6e13a0345b47d447b01a704eeaca3bc445130439f67358eff3ca422d0f9648a6c938f3709e75b393605e1b76a0a73a13fc601d750ba846a643c172
3535
languageName: node
3636
linkType: hard
3737

3838
"@datadog/browser-rum@file:../../../packages/rum/package.tgz::locator=app%40workspace%3A.":
3939
version: 6.19.0
40-
resolution: "@datadog/browser-rum@file:../../../packages/rum/package.tgz#../../../packages/rum/package.tgz::hash=ee172a&locator=app%40workspace%3A."
40+
resolution: "@datadog/browser-rum@file:../../../packages/rum/package.tgz#../../../packages/rum/package.tgz::hash=d7abd0&locator=app%40workspace%3A."
4141
dependencies:
4242
"@datadog/browser-core": "npm:6.19.0"
4343
"@datadog/browser-rum-core": "npm:6.19.0"
@@ -46,7 +46,7 @@ __metadata:
4646
peerDependenciesMeta:
4747
"@datadog/browser-logs":
4848
optional: true
49-
checksum: 10c0/2fa8d3113512df9ee7f9320cec1eadb1c59d7296d4451ae572d34298379a3a06b71f890fd78e191b2e2e91ee39bff91bb859aa1892cf950383b20875b34a6a78
49+
checksum: 10c0/b635968d1bfe63c072e648322e187e5f71ce60783118e6a9cd5bf65dddf12b3d8452b0a52e8514b9f56395b69fc30fa335ef61d4eb7166bdb224019365660387
5050
languageName: node
5151
linkType: hard
5252

0 commit comments

Comments
 (0)