feat(logger): add explicit Sentry event channel
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline was successful

This commit is contained in:
2026-08-05 13:05:06 -03:00
parent 0ccb7f911d
commit 44f471653e
7 changed files with 66 additions and 10 deletions
+20
View File
@@ -78,6 +78,26 @@ describe("createLogger", () => {
consoleError.mockRestore();
});
it("sends explicitly selected production events to Sentry without writing them to the console", () => {
const destination = sink();
const consoleInfo = vi.spyOn(console, "info").mockImplementation(() => undefined);
const logger = createLogger({
environment: "production",
runtime: "browser",
sentry: destination.sink,
});
logger.sentry.info("Cache warmed");
expect(destination.events).toHaveLength(1);
expect(destination.events[0]).toMatchObject({
level: "info",
arguments: ["Cache warmed"],
sendToSentry: true,
sendToConsole: false,
});
expect(consoleInfo).not.toHaveBeenCalled();
consoleInfo.mockRestore();
});
it("keeps production Node errors on stderr as well as sending them to Sentry", () => {
const destination = sink();
const consoleError = vi.spyOn(console, "error").mockImplementation(() => undefined);