@bugsnag/browser-performance
Advanced tools
@@ -0,1 +1,2 @@ | ||
| import { traceIdToSamplingRate } from '@bugsnag/core-performance'; | ||
| import { defaultNetworkRequestCallback } from '@bugsnag/request-tracker-performance'; | ||
@@ -83,2 +84,3 @@ | ||
| extraRequestHeaders.traceparent = buildTraceparentHeader(traceId, parentSpanId, sampled); | ||
| extraRequestHeaders.tracestate = buildTracestateHeader(traceId); | ||
| } | ||
@@ -91,2 +93,3 @@ else if (this.spanContextStorage.current) { | ||
| extraRequestHeaders.traceparent = buildTraceparentHeader(traceId, parentSpanId, sampled); | ||
| extraRequestHeaders.tracestate = buildTracestateHeader(traceId); | ||
| } | ||
@@ -99,3 +102,6 @@ return extraRequestHeaders; | ||
| } | ||
| function buildTracestateHeader(traceId) { | ||
| return `sb=v:1;r:${traceIdToSamplingRate(traceId)}`; | ||
| } | ||
| export { NetworkRequestPlugin }; |
@@ -51,3 +51,6 @@ import { isObject, isString, coreSpanOptionSchema } from '@bugsnag/core-performance'; | ||
| // create internal options for validation | ||
| const routeChangeSpanOptions = Object.assign(Object.assign({}, options), { trigger }); | ||
| const routeChangeSpanOptions = { | ||
| ...options, | ||
| trigger | ||
| }; | ||
| const cleanOptions = this.spanFactory.validateSpanOptions('[RouteChange]', routeChangeSpanOptions, routeChangeSpanOptionSchema); | ||
@@ -54,0 +57,0 @@ const route = configuration.routingProvider.resolveRoute(absoluteUrl) || defaultRouteResolver(absoluteUrl); |
+25
-10
@@ -7,41 +7,56 @@ import { schema, isBoolean, isStringOrRegExpArray, isStringWithLength } from '@bugsnag/core-performance'; | ||
| function createSchema(hostname, defaultRoutingProvider) { | ||
| return Object.assign(Object.assign({}, schema), { releaseStage: Object.assign(Object.assign({}, schema.releaseStage), { defaultValue: hostname === 'localhost' ? 'development' : 'production' }), autoInstrumentFullPageLoads: { | ||
| return { | ||
| ...schema, | ||
| releaseStage: { | ||
| ...schema.releaseStage, | ||
| defaultValue: hostname === 'localhost' ? 'development' : 'production' | ||
| }, | ||
| autoInstrumentFullPageLoads: { | ||
| defaultValue: true, | ||
| message: 'should be true|false', | ||
| validate: isBoolean | ||
| }, autoInstrumentNetworkRequests: { | ||
| }, | ||
| autoInstrumentNetworkRequests: { | ||
| defaultValue: true, | ||
| message: 'should be true|false', | ||
| validate: isBoolean | ||
| }, autoInstrumentRouteChanges: { | ||
| }, | ||
| autoInstrumentRouteChanges: { | ||
| defaultValue: true, | ||
| message: 'should be true|false', | ||
| validate: isBoolean | ||
| }, generateAnonymousId: { | ||
| }, | ||
| generateAnonymousId: { | ||
| defaultValue: true, | ||
| message: 'should be true|false', | ||
| validate: isBoolean | ||
| }, routingProvider: { | ||
| }, | ||
| routingProvider: { | ||
| defaultValue: defaultRoutingProvider, | ||
| message: 'should be a routing provider', | ||
| validate: isRoutingProvider | ||
| }, settleIgnoreUrls: { | ||
| }, | ||
| settleIgnoreUrls: { | ||
| defaultValue: [], | ||
| message: 'should be an array of string|RegExp', | ||
| validate: isStringOrRegExpArray | ||
| }, networkRequestCallback: { | ||
| }, | ||
| networkRequestCallback: { | ||
| defaultValue: defaultNetworkRequestCallback, | ||
| message: 'should be a function', | ||
| validate: isNetworkRequestCallback | ||
| }, sendPageAttributes: { | ||
| }, | ||
| sendPageAttributes: { | ||
| defaultValue: defaultSendPageAttributes, | ||
| message: 'should be an object', | ||
| validate: isSendPageAttributes | ||
| }, serviceName: { | ||
| }, | ||
| serviceName: { | ||
| defaultValue: 'unknown_service', | ||
| message: 'should be a string', | ||
| validate: isStringWithLength | ||
| } }); | ||
| } | ||
| }; | ||
| } | ||
| export { createSchema }; |
@@ -8,3 +8,3 @@ import cuid from '@bugsnag/cuid'; | ||
| return function resourceAttributesSource(config) { | ||
| const attributes = new ResourceAttributes(config.releaseStage, config.appVersion, config.serviceName, 'bugsnag.performance.browser', '2.8.0'); | ||
| const attributes = new ResourceAttributes(config.releaseStage, config.appVersion, config.serviceName, 'bugsnag.performance.browser', '2.8.1-alpha.0'); | ||
| attributes.set('browser.user_agent', navigator.userAgent); | ||
@@ -11,0 +11,0 @@ // chromium only |
@@ -9,3 +9,6 @@ import { isObject } from '@bugsnag/core-performance'; | ||
| function getPermittedAttributes(sendPageAttributes) { | ||
| return Object.assign(Object.assign({}, defaultSendPageAttributes), sendPageAttributes); | ||
| return { | ||
| ...defaultSendPageAttributes, | ||
| ...sendPageAttributes | ||
| }; | ||
| } | ||
@@ -12,0 +15,0 @@ function isSendPageAttributes(obj) { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"network-request-plugin.d.ts","sourceRoot":"","sources":["../../../lib/auto-instrumentation/network-request-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAU,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAgB,MAAM,2BAA2B,CAAA;AAKrI,OAAO,KAAK,EAA0B,kBAAkB,EAAgE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACpL,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAErD,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACnE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAA;IAEzD;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAID,qBAAa,oBAAqB,YAAW,MAAM,CAAC,oBAAoB,CAAC;IAMrE,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,UAAU;IARpB,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,sBAAsB,CAAmF;IACjH,OAAO,CAAC,MAAM,CAAiG;gBAGrG,WAAW,EAAE,WAAW,CAAC,oBAAoB,CAAC,EACrC,kBAAkB,EAAE,kBAAkB,EAC/C,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,cAAc;IAGpC,SAAS,CAAE,aAAa,EAAE,qBAAqB,CAAC,oBAAoB,CAAC;IAWrE,OAAO,CAAC,YAAY,CAyDnB;IAED,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,sBAAsB;CAqB/B"} | ||
| {"version":3,"file":"network-request-plugin.d.ts","sourceRoot":"","sources":["../../../lib/auto-instrumentation/network-request-plugin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAU,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAgB,MAAM,2BAA2B,CAAA;AAKrI,OAAO,KAAK,EAA0B,kBAAkB,EAAgE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACpL,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAErD,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACnE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAA;IAEzD;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAID,qBAAa,oBAAqB,YAAW,MAAM,CAAC,oBAAoB,CAAC;IAMrE,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,UAAU;IARpB,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,sBAAsB,CAAmF;IACjH,OAAO,CAAC,MAAM,CAAiG;gBAGrG,WAAW,EAAE,WAAW,CAAC,oBAAoB,CAAC,EACrC,kBAAkB,EAAE,kBAAkB,EAC/C,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,cAAc;IAGpC,SAAS,CAAE,aAAa,EAAE,qBAAqB,CAAC,oBAAoB,CAAC;IAWrE,OAAO,CAAC,YAAY,CAyDnB;IAED,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,sBAAsB;CAuB/B"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"page-load-phase-spans.d.ts","sourceRoot":"","sources":["../../../lib/auto-instrumentation/page-load-phase-spans.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAkBhF,eAAO,MAAM,4BAA4B,gBAC1B,YAAY,oBAAoB,CAAC,eACjC,qBAAqB,SAC3B,MAAM,iBACE,WAAW,SAkC3B,CAAA"} | ||
| {"version":3,"file":"page-load-phase-spans.d.ts","sourceRoot":"","sources":["../../../lib/auto-instrumentation/page-load-phase-spans.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAkBhF,eAAO,MAAM,4BAA4B,gBAC1B,WAAW,CAAC,oBAAoB,CAAC,eACjC,qBAAqB,SAC3B,MAAM,iBACE,WAAW,SAkC3B,CAAA"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"routing-provider.d.ts","sourceRoot":"","sources":["../../lib/routing-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAExE,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;AACtE,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,KAAK,eAAe,CAAA;AAEhI,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI;IAC3C,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,yBAAyB,EAAE,yBAAyB,KAAK,IAAI,CAAC,CAAA;CACnG;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAA;IAClC,qBAAqB,EAAE,CAAC,oBAAoB,EAAE,wBAAwB,KAAK,IAAI,CAAA;CAChF;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAA;AAEhD,eAAO,MAAM,iBAAiB,UAAW,OAAO,6BAGK,CAAA"} | ||
| {"version":3,"file":"routing-provider.d.ts","sourceRoot":"","sources":["../../lib/routing-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAExE,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;AACtE,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,KAAK,eAAe,CAAA;AAEhI,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI;IAC3C,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,yBAAyB,EAAE,yBAAyB,KAAK,IAAI,CAAC,CAAA;CACnG;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAA;IAClC,qBAAqB,EAAE,CAAC,oBAAoB,EAAE,wBAAwB,KAAK,IAAI,CAAA;CAChF;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAA;AAEhD,eAAO,MAAM,iBAAiB,UAAW,OAAO,KAAG,KAAK,IAAI,eAGP,CAAA"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"send-page-attributes.d.ts","sourceRoot":"","sources":["../../lib/send-page-attributes.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAED,eAAO,MAAM,yBAAyB;;;;CAIrC,CAAA;AAED,wBAAgB,sBAAsB,CAAE,kBAAkB,EAAE,kBAAkB;;;;EAK7E;AAED,wBAAgB,oBAAoB,CAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,kBAAkB,CAK7E"} | ||
| {"version":3,"file":"send-page-attributes.d.ts","sourceRoot":"","sources":["../../lib/send-page-attributes.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAED,eAAO,MAAM,yBAAyB;;;;CAIrC,CAAA;AAED,wBAAgB,sBAAsB,CAAE,kBAAkB,EAAE,kBAAkB;cAXjE,OAAO;WACV,OAAO;SACT,OAAO;EAcd;AAED,wBAAgB,oBAAoB,CAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,kBAAkB,CAK7E"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"span-attributes-source.d.ts","sourceRoot":"","sources":["../../lib/span-attributes-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAyB,oBAAoB,EAAgB,MAAM,2BAA2B,CAAA;AAC1G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEpD,eAAO,MAAM,0BAA0B,aAAc,QAAQ,KAAG,qBAAqB,oBAAoB,CA2BxG,CAAA;AAED,eAAe,0BAA0B,CAAA"} | ||
| {"version":3,"file":"span-attributes-source.d.ts","sourceRoot":"","sources":["../../lib/span-attributes-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAyB,oBAAoB,EAAgB,MAAM,2BAA2B,CAAA;AAC1G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEpD,eAAO,MAAM,0BAA0B,aAAc,QAAQ,KAAG,oBAAoB,CAAC,oBAAoB,CA2BxG,CAAA;AAED,eAAe,0BAA0B,CAAA"} |
+6
-6
| { | ||
| "name": "@bugsnag/browser-performance", | ||
| "version": "2.8.0", | ||
| "version": "2.8.1-alpha.0", | ||
| "description": "BugSnag performance monitoring for browsers", | ||
@@ -24,9 +24,9 @@ "homepage": "https://www.bugsnag.com/", | ||
| "dependencies": { | ||
| "@bugsnag/core-performance": "^2.8.0", | ||
| "@bugsnag/core-performance": "^2.8.1-alpha.0", | ||
| "@bugsnag/cuid": "^3.1.1", | ||
| "@bugsnag/delivery-fetch-performance": "^2.8.0", | ||
| "@bugsnag/request-tracker-performance": "^2.8.0" | ||
| "@bugsnag/delivery-fetch-performance": "^2.8.1-alpha.0", | ||
| "@bugsnag/request-tracker-performance": "^2.8.1-alpha.0" | ||
| }, | ||
| "devDependencies": { | ||
| "@bugsnag/browser": "^7.25.0-alpha.0" | ||
| "@bugsnag/browser": "8.0.0-alpha.13" | ||
| }, | ||
@@ -39,3 +39,3 @@ "type": "module", | ||
| ], | ||
| "gitHead": "39754ecb88063ec84edb031202820545950725de" | ||
| "gitHead": "904470ce3230f19ce28f858efe5cf6b0f18cecf1" | ||
| } |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
84204
0.58%1434
1.92%2
100%