Skip to content

Commit 35724f5

Browse files
authored
fix: supress telemetry event servermessage and serverexception (#1455)
1 parent b705267 commit 35724f5

File tree

3 files changed

+18
-6
lines changed

3 files changed

+18
-6
lines changed

src/daemon/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -216,8 +216,8 @@ async function traceJavaExtension(javaExt: vscode.Extension<any>) {
216216
const javaExtVersion = javaExt.packageJSON?.version;
217217
const isPreReleaseVersion = /^\d+\.\d+\.\d{10}/.test(javaExtVersion);
218218
const remappedKeys: any = {
219-
"message": "servermessage",
220-
"exception": "serverexception"
219+
"message": "server_message",
220+
"exception": "server_exception"
221221
};
222222
javaExt.exports?.trackEvent?.((event: any) => {
223223
const metrics: any = {

src/extension.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import { KEY_SHOW_WHEN_USING_JAVA } from "./utils/globalState";
2323
import { scheduleAction } from "./utils/scheduler";
2424
import { showWelcomeWebview, WelcomeViewSerializer } from "./welcome";
2525
import { ProjectSettingsViewSerializer } from "./project-settings/projectSettingsView";
26+
import { TelemetryFilter } from "./utils/telemetryFilter";
2627

2728
let cleanJavaWorkspaceIndicator: string;
2829
let activatedTimestamp: number;
@@ -98,10 +99,8 @@ function initializeTelemetry(_context: vscode.ExtensionContext) {
9899
if (packageInfo.aiKey) {
99100
initialize(packageInfo.id, packageInfo.version, packageInfo.aiKey, {
100101
replacementOptions: [
101-
{
102-
lookup: /eyJ[A-Za-z0-9_-]+\.eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9-_]*/,
103-
replacementString: "<REDACTED: JWT token>"
104-
}
102+
TelemetryFilter.hideUrlOption,
103+
TelemetryFilter.hideJwtTokenOption
105104
]
106105
});
107106
}

src/utils/telemetryFilter.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { ReplacementOption } from "@vscode/extension-telemetry";
2+
3+
export class TelemetryFilter {
4+
public static hideUrlOption: ReplacementOption = {
5+
lookup: /https?:\/\/[^:\s]+:[^@\s]+@[^\s]+/g, // match URLs with embedded credentials
6+
replacementString: "<REDACTED: sensitive-url>",
7+
};
8+
9+
public static hideJwtTokenOption: ReplacementOption = {
10+
lookup: /eyJ[A-Za-z0-9_-]+\.eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9-_]*/,
11+
replacementString: "<REDACTED: JWT token>"
12+
}
13+
}

0 commit comments

Comments
 (0)