@crimson-education/browser-logger 4.0.1 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,11 +15,30 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
15
15
  proxyUrl?: string;
16
16
  /**
17
17
  * Controls the percentage of overall sessions being tracked. It defaults to 100, so every session is tracked by default.
18
+ *
19
+ * More specific sample rate options take priority over this option. For instance, if `logSampleRate` is 50 and `sampleRate`
20
+ * is 75, then the sample rate used for log messages will be `50`.
21
+ *
22
+ * @deprecated Prefer using the dedicated `logSampleRate`, `rumSampleRate`, and `replaySampleRate` options.
18
23
  */
19
24
  sampleRate?: number;
20
25
  /**
21
- * Applied after the overall sample rate, and controls the percentage of sessions tracked as Browser RUM & Session Replay.
26
+ * Sampling rate for browser log collection. Defaults to 100, meaning every log message is sent to Datadog.
27
+ */
28
+ logSampleRate?: number;
29
+ /**
30
+ * Sampling rate for RUM session collection. Defaults to 100, meaning every browser session is tracked.
31
+ *
32
+ * RUM can be used to track things like core web vitals.
33
+ *
34
+ * @see https://www.datadoghq.com/product/real-user-monitoring/
35
+ */
36
+ rumSampleRate?: number;
37
+ /**
38
+ * Applied after the RUM sample rate, and controls the percentage of sessions tracked as Browser RUM & Session Replay.
22
39
  * It defaults to 100, so every session is tracked as Browser RUM & Session Replay by default.
40
+ *
41
+ * These sessions end up with a session replay available in Datadog.
23
42
  */
24
43
  replaySampleRate?: number;
25
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"datadogReporter.d.ts","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMT,WAAW,EACX,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAA4B,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAc,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,yBAAyB,EAAoB,MAAM,4BAA4B,CAAC;AAEzF,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC;;OAEG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IAEvC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEhD;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IACnD;;OAEG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAErD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC5C;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS,CA6H3F"}
1
+ {"version":3,"file":"datadogReporter.d.ts","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMT,WAAW,EACX,kBAAkB,EAEnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAA4B,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAc,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,yBAAyB,EAAoB,MAAM,4BAA4B,CAAC;AAEzF,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC;;OAEG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IAEvC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEhD;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IACnD;;OAEG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAErD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC5C;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS,CAgI3F"}
@@ -6,7 +6,7 @@ const browser_rum_1 = require("@datadog/browser-rum");
6
6
  const logger_1 = require("../logger");
7
7
  const datadogTransport_1 = require("../logger/datadogTransport");
8
8
  function datadogReporter(info, config) {
9
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
9
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
10
10
  const isLocalhost = window.location.hostname === 'localhost';
11
11
  // Don't forward error logs by default, do enable the log transport by default
12
12
  // forwardErrorsToLogs incorrectly is called forwardConsoleLogs, this is for backwards compatibility
@@ -21,10 +21,10 @@ function datadogReporter(info, config) {
21
21
  service: info.service,
22
22
  env: info.environment,
23
23
  version: (_b = config.version) !== null && _b !== void 0 ? _b : info.version,
24
- sampleRate: (_c = config.sampleRate) !== null && _c !== void 0 ? _c : 100,
24
+ sampleRate: (_d = (_c = config.logSampleRate) !== null && _c !== void 0 ? _c : config.sampleRate) !== null && _d !== void 0 ? _d : 100,
25
25
  beforeSend: config.beforeLogsSend,
26
- useSecureSessionCookie: (_d = config.useSecureSessionCookie) !== null && _d !== void 0 ? _d : !isLocalhost,
27
- useCrossSiteSessionCookie: (_e = config.useCrossSiteSessionCookie) !== null && _e !== void 0 ? _e : false,
26
+ useSecureSessionCookie: (_e = config.useSecureSessionCookie) !== null && _e !== void 0 ? _e : !isLocalhost,
27
+ useCrossSiteSessionCookie: (_f = config.useCrossSiteSessionCookie) !== null && _f !== void 0 ? _f : false,
28
28
  trackSessionAcrossSubdomains: config.trackSessionAcrossSubdomains,
29
29
  forwardErrorsToLogs,
30
30
  });
@@ -41,20 +41,20 @@ function datadogReporter(info, config) {
41
41
  applicationId: config.applicationId,
42
42
  service: info.service,
43
43
  env: info.environment,
44
- version: (_f = config.version) !== null && _f !== void 0 ? _f : info.version,
45
- sampleRate: (_g = config.sampleRate) !== null && _g !== void 0 ? _g : 100,
46
- replaySampleRate: (_h = config.replaySampleRate) !== null && _h !== void 0 ? _h : 100,
47
- useSecureSessionCookie: (_j = config.useSecureSessionCookie) !== null && _j !== void 0 ? _j : !isLocalhost,
48
- useCrossSiteSessionCookie: (_k = config.useCrossSiteSessionCookie) !== null && _k !== void 0 ? _k : false,
44
+ version: (_g = config.version) !== null && _g !== void 0 ? _g : info.version,
45
+ sampleRate: (_j = (_h = config.rumSampleRate) !== null && _h !== void 0 ? _h : config.sampleRate) !== null && _j !== void 0 ? _j : 100,
46
+ replaySampleRate: (_k = config.replaySampleRate) !== null && _k !== void 0 ? _k : 100,
47
+ useSecureSessionCookie: (_l = config.useSecureSessionCookie) !== null && _l !== void 0 ? _l : !isLocalhost,
48
+ useCrossSiteSessionCookie: (_m = config.useCrossSiteSessionCookie) !== null && _m !== void 0 ? _m : false,
49
49
  trackSessionAcrossSubdomains: config.trackSessionAcrossSubdomains,
50
- trackInteractions: (_l = config.trackInteractions) !== null && _l !== void 0 ? _l : false,
51
- trackFrustrations: (_m = config.trackFrustrations) !== null && _m !== void 0 ? _m : false,
52
- trackViewsManually: (_o = config.trackViewsManually) !== null && _o !== void 0 ? _o : false,
53
- actionNameAttribute: (_p = config.actionNameAttribute) !== null && _p !== void 0 ? _p : 'data-analytics-name',
50
+ trackInteractions: (_o = config.trackInteractions) !== null && _o !== void 0 ? _o : false,
51
+ trackFrustrations: (_p = config.trackFrustrations) !== null && _p !== void 0 ? _p : false,
52
+ trackViewsManually: (_q = config.trackViewsManually) !== null && _q !== void 0 ? _q : false,
53
+ actionNameAttribute: (_r = config.actionNameAttribute) !== null && _r !== void 0 ? _r : 'data-analytics-name',
54
54
  beforeSend: config.beforeSend,
55
- defaultPrivacyLevel: (_q = config.defaultPrivacyLevel) !== null && _q !== void 0 ? _q : 'mask-user-input',
55
+ defaultPrivacyLevel: (_s = config.defaultPrivacyLevel) !== null && _s !== void 0 ? _s : 'mask-user-input',
56
56
  allowedTracingOrigins: config.allowedTracingOrigins,
57
- trackUserInteractions: (_r = config.trackUserInteractions) !== null && _r !== void 0 ? _r : false,
57
+ trackUserInteractions: (_t = config.trackUserInteractions) !== null && _t !== void 0 ? _t : false,
58
58
  });
59
59
  const reporter = {
60
60
  trackEvent: function (event) {
@@ -113,6 +113,9 @@ function datadogReporter(info, config) {
113
113
  reportError: function (error, metadata) {
114
114
  browser_rum_1.datadogRum.addError(error, metadata);
115
115
  },
116
+ reportFeatureFlag: function (flag) {
117
+ browser_rum_1.datadogRum.addFeatureFlagEvaluation(flag.name, flag.value);
118
+ },
116
119
  recordSession: function () {
117
120
  browser_rum_1.datadogRum.startSessionReplayRecording();
118
121
  },
@@ -1 +1 @@
1
- {"version":3,"file":"datadogReporter.js","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datadogReporter.js","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { IReporter, LogLevel, Metadata, ReporterBreadcrumb, ReporterEvent, ReporterFilters, ReportError, ReporterType, ReportUser, TrackedReporterEvent } from '../types';
1
+ import { IReporter, LogLevel, Metadata, ReporterBreadcrumb, ReporterEvent, ReporterFilters, ReporterFlag, ReportError, ReporterType, ReportUser, TrackedReporterEvent } from '../types';
2
2
  export declare const reporters: Partial<Record<ReporterType, IReporter>>;
3
3
  export declare let globalEventLevel: LogLevel | undefined;
4
4
  /**
@@ -54,6 +54,13 @@ export declare function setPageName(pageName: string, filters?: ReporterFilters)
54
54
  * @param filters Optional filters to specify which reporters to report the error to.
55
55
  */
56
56
  export declare function reportError(error: ReportError, metadata?: Metadata, filters?: ReporterFilters): void;
57
+ /**
58
+ * Report a feature flag evaluation, e.g. for surfacing in Datadog RUM.
59
+ *
60
+ * @param flag Details about the feature flag evaluation
61
+ * @param filters Filters to specify which reporters to start a session recording for.
62
+ */
63
+ export declare function reportFeatureFlag(flag: ReporterFlag, filters?: ReporterFilters): void;
57
64
  /**
58
65
  * Starts a session recording in Analytics, e.g. RUM Session Replay
59
66
  * @param filters Optional filters to specify which reporters to start a session recording for.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reporters/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,WAAW,EACX,YAAY,EACZ,UAAU,EACV,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAGlB,eAAO,MAAM,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAM,CAAC;AAEtE,eAAO,IAAI,gBAAgB,EAAE,QAAQ,GAAG,SAAS,CAAC;AAClD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAE1D;AAkBD;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAkBrD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAoBpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,oBAAoB,GAAG,IAAI,CAOjE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAYlE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO/E;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOhF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO/E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO7E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOpG;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO7D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOjE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reporters/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,UAAU,EACV,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAGlB,eAAO,MAAM,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAM,CAAC;AAEtE,eAAO,IAAI,gBAAgB,EAAE,QAAQ,GAAG,SAAS,CAAC;AAClD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAE1D;AAkBD;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAkBrD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAoBpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,oBAAoB,GAAG,IAAI,CAOjE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAYlE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO/E;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOhF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO/E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO7E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOpG;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOrF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO7D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAOjE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.recordSessionStop = exports.recordSession = exports.reportError = exports.setPageName = exports.setRouteName = exports.setUser = exports.addMetadata = exports.addBreadcrumb = exports.getLastTrackedEvent = exports.trackEventSinceLastAction = exports.trackEvent = exports.setEventLevel = exports.globalEventLevel = exports.reporters = void 0;
3
+ exports.recordSessionStop = exports.recordSession = exports.reportFeatureFlag = exports.reportError = exports.setPageName = exports.setRouteName = exports.setUser = exports.addMetadata = exports.addBreadcrumb = exports.getLastTrackedEvent = exports.trackEventSinceLastAction = exports.trackEvent = exports.setEventLevel = exports.globalEventLevel = exports.reporters = void 0;
4
4
  const utils_1 = require("../logger/utils");
5
5
  const utils_2 = require("../utils");
6
6
  exports.reporters = {};
@@ -182,6 +182,22 @@ function reportError(error, metadata, filters) {
182
182
  }
183
183
  }
184
184
  exports.reportError = reportError;
185
+ /**
186
+ * Report a feature flag evaluation, e.g. for surfacing in Datadog RUM.
187
+ *
188
+ * @param flag Details about the feature flag evaluation
189
+ * @param filters Filters to specify which reporters to start a session recording for.
190
+ */
191
+ function reportFeatureFlag(flag, filters) {
192
+ var _a, _b;
193
+ for (const reporter of getReporters(filters)) {
194
+ if (((_a = reporter.endpoints) === null || _a === void 0 ? void 0 : _a.reportFeatureFlag) === false) {
195
+ continue;
196
+ }
197
+ (_b = reporter.reportFeatureFlag) === null || _b === void 0 ? void 0 : _b.call(reporter, flag);
198
+ }
199
+ }
200
+ exports.reportFeatureFlag = reportFeatureFlag;
185
201
  /**
186
202
  * Starts a session recording in Analytics, e.g. RUM Session Replay
187
203
  * @param filters Optional filters to specify which reporters to start a session recording for.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reporters/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reporters/index.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,10 @@ export interface ReporterBreadcrumb extends ReporterFilters {
107
107
  */
108
108
  metadata?: Metadata | undefined;
109
109
  }
110
+ export interface ReporterFlag {
111
+ name: string;
112
+ value: any;
113
+ }
110
114
  export interface ReporterConfigBase {
111
115
  /**
112
116
  * Enable/Disable reporter endpoints from being called.
@@ -119,6 +123,7 @@ export interface ReporterConfigBase {
119
123
  setRouteName?: boolean;
120
124
  setPageName?: boolean;
121
125
  reportError?: boolean;
126
+ reportFeatureFlag?: boolean;
122
127
  recordSession?: boolean;
123
128
  recordSessionStop?: boolean;
124
129
  };
@@ -149,6 +154,7 @@ export interface IReporter extends ReporterConfigBase {
149
154
  setRouteName(routeName: string): void;
150
155
  setPageName(pageName: string): void;
151
156
  reportError?(error: ReportError, metadata?: Metadata): void;
157
+ reportFeatureFlag?(flag: ReporterFlag): void;
152
158
  recordSession?(): void;
153
159
  recordSessionStop?(): void;
154
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/types/reporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/types/reporter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crimson-education/browser-logger",
3
- "version": "4.0.1",
3
+ "version": "4.1.0",
4
4
  "description": "An abstract logger and reporting utility for browser environments",
5
5
  "scripts": {
6
6
  "prepack": "npm run build",
@@ -7,6 +7,7 @@ import {
7
7
  ReportUser,
8
8
  ServiceInfo,
9
9
  ReporterConfigBase,
10
+ ReporterFlag,
10
11
  } from '../types';
11
12
  import { datadogLogs, HandlerType, LogsInitConfiguration } from '@datadog/browser-logs';
12
13
  import { datadogRum, DefaultPrivacyLevel, RumInitConfiguration } from '@datadog/browser-rum';
@@ -27,11 +28,30 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
27
28
 
28
29
  /**
29
30
  * Controls the percentage of overall sessions being tracked. It defaults to 100, so every session is tracked by default.
31
+ *
32
+ * More specific sample rate options take priority over this option. For instance, if `logSampleRate` is 50 and `sampleRate`
33
+ * is 75, then the sample rate used for log messages will be `50`.
34
+ *
35
+ * @deprecated Prefer using the dedicated `logSampleRate`, `rumSampleRate`, and `replaySampleRate` options.
30
36
  */
31
37
  sampleRate?: number;
32
38
  /**
33
- * Applied after the overall sample rate, and controls the percentage of sessions tracked as Browser RUM & Session Replay.
39
+ * Sampling rate for browser log collection. Defaults to 100, meaning every log message is sent to Datadog.
40
+ */
41
+ logSampleRate?: number;
42
+ /**
43
+ * Sampling rate for RUM session collection. Defaults to 100, meaning every browser session is tracked.
44
+ *
45
+ * RUM can be used to track things like core web vitals.
46
+ *
47
+ * @see https://www.datadoghq.com/product/real-user-monitoring/
48
+ */
49
+ rumSampleRate?: number;
50
+ /**
51
+ * Applied after the RUM sample rate, and controls the percentage of sessions tracked as Browser RUM & Session Replay.
34
52
  * It defaults to 100, so every session is tracked as Browser RUM & Session Replay by default.
53
+ *
54
+ * These sessions end up with a session replay available in Datadog.
35
55
  */
36
56
  replaySampleRate?: number;
37
57
 
@@ -121,7 +141,7 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
121
141
  env: info.environment,
122
142
  version: config.version ?? info.version,
123
143
 
124
- sampleRate: config.sampleRate ?? 100,
144
+ sampleRate: config.logSampleRate ?? config.sampleRate ?? 100,
125
145
  beforeSend: config.beforeLogsSend,
126
146
 
127
147
  useSecureSessionCookie: config.useSecureSessionCookie ?? !isLocalhost,
@@ -147,7 +167,7 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
147
167
  env: info.environment,
148
168
  version: config.version ?? info.version,
149
169
 
150
- sampleRate: config.sampleRate ?? 100,
170
+ sampleRate: config.rumSampleRate ?? config.sampleRate ?? 100,
151
171
  replaySampleRate: config.replaySampleRate ?? 100,
152
172
 
153
173
  useSecureSessionCookie: config.useSecureSessionCookie ?? !isLocalhost,
@@ -220,6 +240,9 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
220
240
  reportError: function (error: ReportError, metadata?: Metadata): void {
221
241
  datadogRum.addError(error, metadata);
222
242
  },
243
+ reportFeatureFlag: function (flag: ReporterFlag): void {
244
+ datadogRum.addFeatureFlagEvaluation(flag.name, flag.value);
245
+ },
223
246
  recordSession: function (): void {
224
247
  datadogRum.startSessionReplayRecording();
225
248
  },
@@ -6,6 +6,7 @@ import {
6
6
  ReporterBreadcrumb,
7
7
  ReporterEvent,
8
8
  ReporterFilters,
9
+ ReporterFlag,
9
10
  ReportError,
10
11
  ReporterType,
11
12
  ReportUser,
@@ -189,6 +190,21 @@ export function reportError(error: ReportError, metadata?: Metadata, filters?: R
189
190
  }
190
191
  }
191
192
 
193
+ /**
194
+ * Report a feature flag evaluation, e.g. for surfacing in Datadog RUM.
195
+ *
196
+ * @param flag Details about the feature flag evaluation
197
+ * @param filters Filters to specify which reporters to start a session recording for.
198
+ */
199
+ export function reportFeatureFlag(flag: ReporterFlag, filters?: ReporterFilters): void {
200
+ for (const reporter of getReporters(filters)) {
201
+ if (reporter.endpoints?.reportFeatureFlag === false) {
202
+ continue;
203
+ }
204
+ reporter.reportFeatureFlag?.(flag);
205
+ }
206
+ }
207
+
192
208
  /**
193
209
  * Starts a session recording in Analytics, e.g. RUM Session Replay
194
210
  * @param filters Optional filters to specify which reporters to start a session recording for.
@@ -116,6 +116,11 @@ export interface ReporterBreadcrumb extends ReporterFilters {
116
116
  metadata?: Metadata | undefined;
117
117
  }
118
118
 
119
+ export interface ReporterFlag {
120
+ name: string;
121
+ value: any;
122
+ }
123
+
119
124
  export interface ReporterConfigBase {
120
125
  /**
121
126
  * Enable/Disable reporter endpoints from being called.
@@ -128,6 +133,7 @@ export interface ReporterConfigBase {
128
133
  setRouteName?: boolean;
129
134
  setPageName?: boolean;
130
135
  reportError?: boolean;
136
+ reportFeatureFlag?: boolean;
131
137
  recordSession?: boolean;
132
138
  recordSessionStop?: boolean;
133
139
  };
@@ -162,6 +168,7 @@ export interface IReporter extends ReporterConfigBase {
162
168
  setRouteName(routeName: string): void;
163
169
  setPageName(pageName: string): void;
164
170
  reportError?(error: ReportError, metadata?: Metadata): void;
171
+ reportFeatureFlag?(flag: ReporterFlag): void;
165
172
  recordSession?(): void;
166
173
  recordSessionStop?(): void;
167
174
  }