Frontend Monitoring: Update regex to ignore options.customEndpoint (#96542)
* fix(GrafanaJavascriptAgentBackend): update regex to ignore options.customEndpoint * update test
This commit is contained in:
+1
-1
@@ -92,7 +92,7 @@ describe('GrafanaJavascriptAgentEchoBackend', () => {
|
||||
expect(initializeFaroMock.mock.calls[0][0].transports?.length).toEqual(2);
|
||||
expect(initializeFaroMock.mock.calls[0][0].transports?.[0]).toBeInstanceOf(EchoSrvTransport);
|
||||
expect(initializeFaroMock.mock.calls[0][0].transports?.[0].getIgnoreUrls()).toEqual([
|
||||
new RegExp('/*/log-grafana-javascript-agent/'),
|
||||
/.*\/log-grafana-javascript-agent.*/,
|
||||
/.*.google-analytics.com*.*/,
|
||||
/.*.googletagmanager.com*.*/,
|
||||
/frontend-metrics/,
|
||||
|
||||
+7
-2
@@ -1,4 +1,4 @@
|
||||
import { BuildInfo } from '@grafana/data';
|
||||
import { BuildInfo, escapeRegex } from '@grafana/data';
|
||||
import { BaseTransport, defaultInternalLoggerLevel } from '@grafana/faro-core';
|
||||
import {
|
||||
initializeFaro,
|
||||
@@ -53,7 +53,12 @@ export class GrafanaJavascriptAgentBackend
|
||||
constructor(public options: GrafanaJavascriptAgentBackendOptions) {
|
||||
// configure instrumentations.
|
||||
const instrumentations: Instrumentation[] = [];
|
||||
const ignoreUrls = [new RegExp(`/*${options.customEndpoint}/`), ...TRACKING_URLS, ...options.ignoreUrls];
|
||||
|
||||
const ignoreUrls = [
|
||||
new RegExp(`.*${escapeRegex(options.customEndpoint)}.*`),
|
||||
...TRACKING_URLS,
|
||||
...options.ignoreUrls,
|
||||
];
|
||||
|
||||
const transports: BaseTransport[] = [new EchoSrvTransport({ ignoreUrls })];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user