Put error logging behind new secret flag
This commit is contained in:
@@ -196,7 +196,12 @@ export class TelemetryListener extends ConfigListener {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!newTelemetryEnabled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const properties: { [key: string]: string } = {
|
||||
isCanary: isCanary().toString(),
|
||||
message: error.redactedMessage,
|
||||
...extraProperties,
|
||||
};
|
||||
|
||||
@@ -13,6 +13,7 @@ import { UserCancellationException } from "../../../src/commandRunner";
|
||||
import { ENABLE_TELEMETRY } from "../../../src/config";
|
||||
import * as Config from "../../../src/config";
|
||||
import { createMockExtensionContext } from "./index";
|
||||
import { redactableError } from "../../../src/pure/errors";
|
||||
|
||||
// setting preferences can trigger lots of background activity
|
||||
// so need to bump up the timeout of this test.
|
||||
@@ -390,13 +391,21 @@ describe("telemetry reporting", () => {
|
||||
});
|
||||
|
||||
describe("when new telementry is not enabled", () => {
|
||||
it("should not send a telementry event", async () => {
|
||||
it("should not send a ui-interaction telementry event", async () => {
|
||||
await telemetryListener.initialize();
|
||||
|
||||
telemetryListener.sendUIInteraction("test");
|
||||
|
||||
expect(sendTelemetryEventSpy).not.toBeCalled();
|
||||
});
|
||||
|
||||
it("should not send an error telementry event", async () => {
|
||||
await telemetryListener.initialize();
|
||||
|
||||
telemetryListener.sendError(redactableError`test`);
|
||||
|
||||
expect(sendTelemetryEventSpy).not.toBeCalled();
|
||||
});
|
||||
});
|
||||
|
||||
describe("when new telementry is enabled", () => {
|
||||
@@ -404,7 +413,7 @@ describe("telemetry reporting", () => {
|
||||
jest.spyOn(Config, "newTelemetryEnabled").mockReturnValue(true);
|
||||
});
|
||||
|
||||
it("should not send a telementry event", async () => {
|
||||
it("should send a ui-interaction telementry event", async () => {
|
||||
await telemetryListener.initialize();
|
||||
|
||||
telemetryListener.sendUIInteraction("test");
|
||||
@@ -418,6 +427,22 @@ describe("telemetry reporting", () => {
|
||||
{},
|
||||
);
|
||||
});
|
||||
|
||||
it("should send an error telementry event", async () => {
|
||||
await telemetryListener.initialize();
|
||||
|
||||
telemetryListener.sendError(redactableError`test`);
|
||||
|
||||
expect(sendTelemetryEventSpy).toHaveBeenCalledWith(
|
||||
"error",
|
||||
{
|
||||
message: "test",
|
||||
isCanary,
|
||||
stack: expect.any(String),
|
||||
},
|
||||
{},
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
async function enableTelemetry(section: string, value: boolean | undefined) {
|
||||
|
||||
Reference in New Issue
Block a user