mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-11-10 06:43:00 +00:00
Refactor logging to centralized logger
This commit is contained in:
1 parent
08d770162b
commit
37ba57aa37
67 files changed
+1130
-798
No files matched your search
@@ -0,0 +1,99 @@
|
||||
// js/utils/logger.js
|
||||
|
||||
import { isDevMode } from "../config.js";
|
||||
|
||||
const noop = () => {};
|
||||
|
||||
const globalConsole = typeof globalThis !== "undefined" ? globalThis.console : undefined;
|
||||
|
||||
const safeConsole = {
|
||||
log: globalConsole?.log?.bind(globalConsole) ?? noop,
|
||||
info: globalConsole?.info?.bind(globalConsole) ?? noop,
|
||||
warn: globalConsole?.warn?.bind(globalConsole) ?? noop,
|
||||
error: globalConsole?.error?.bind(globalConsole) ?? noop,
|
||||
debug: globalConsole?.debug?.bind(globalConsole) ?? noop,
|
||||
trace: globalConsole?.trace?.bind(globalConsole) ?? noop,
|
||||
group: globalConsole?.group?.bind(globalConsole) ?? noop,
|
||||
groupCollapsed: globalConsole?.groupCollapsed?.bind(globalConsole) ?? noop,
|
||||
groupEnd: globalConsole?.groupEnd?.bind(globalConsole) ?? noop,
|
||||
table: globalConsole?.table?.bind(globalConsole) ?? noop,
|
||||
assert: globalConsole?.assert?.bind(globalConsole) ?? noop,
|
||||
};
|
||||
|
||||
function createChannel({ gateLogs, alwaysWarnError }) {
|
||||
return {
|
||||
log: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.log(...args);
|
||||
}
|
||||
},
|
||||
info: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.info(...args);
|
||||
}
|
||||
},
|
||||
debug: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.debug(...args);
|
||||
}
|
||||
},
|
||||
trace: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.trace(...args);
|
||||
}
|
||||
},
|
||||
group: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.group(...args);
|
||||
}
|
||||
},
|
||||
groupCollapsed: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.groupCollapsed(...args);
|
||||
}
|
||||
},
|
||||
groupEnd: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.groupEnd(...args);
|
||||
}
|
||||
},
|
||||
table: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.table(...args);
|
||||
}
|
||||
},
|
||||
assert: (...args) => {
|
||||
if (!gateLogs || isDevMode) {
|
||||
safeConsole.assert(...args);
|
||||
}
|
||||
},
|
||||
warn: (...args) => {
|
||||
if (!alwaysWarnError && gateLogs && !isDevMode) {
|
||||
return;
|
||||
}
|
||||
safeConsole.warn(...args);
|
||||
},
|
||||
error: (...args) => {
|
||||
if (!alwaysWarnError && gateLogs && !isDevMode) {
|
||||
return;
|
||||
}
|
||||
safeConsole.error(...args);
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
const devChannel = createChannel({ gateLogs: true, alwaysWarnError: false });
|
||||
const userChannel = createChannel({ gateLogs: true, alwaysWarnError: true });
|
||||
|
||||
const logger = {
|
||||
dev: devChannel,
|
||||
user: userChannel,
|
||||
};
|
||||
|
||||
export const devLogger = devChannel;
|
||||
export const userLogger = userChannel;
|
||||
export default logger;
|
||||
|
||||
if (typeof window !== "undefined") {
|
||||
window.bitvidLogger = logger;
|
||||
}
|
||||
+5
-4
@@ -1,3 +1,4 @@
|
||||
import { userLogger } from "logger.js";
|
||||
// js/utils/storage.js
|
||||
|
||||
const URL_HEALTH_STORAGE_PREFIX = "bitvid:urlHealth:";
|
||||
@@ -21,7 +22,7 @@ export function readUrlHealthFromStorage(eventId) {
|
||||
return parsed;
|
||||
}
|
||||
} catch (err) {
|
||||
console.warn(`Failed to parse stored URL health for ${eventId}:`, err);
|
||||
userLogger.warn(`Failed to parse stored URL health for ${eventId}:`, err);
|
||||
}
|
||||
|
||||
removeUrlHealthFromStorage(eventId);
|
||||
@@ -39,7 +40,7 @@ export function writeUrlHealthToStorage(eventId, entry) {
|
||||
JSON.stringify(entry)
|
||||
);
|
||||
} catch (err) {
|
||||
console.warn(`Failed to persist URL health for ${eventId}:`, err);
|
||||
userLogger.warn(`Failed to persist URL health for ${eventId}:`, err);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,6 +52,6 @@ export function removeUrlHealthFromStorage(eventId) {
|
||||
try {
|
||||
localStorage.removeItem(getUrlHealthStorageKey(eventId));
|
||||
} catch (err) {
|
||||
console.warn(`Failed to remove URL health for ${eventId}:`, err);
|
||||
userLogger.warn(`Failed to remove URL health for ${eventId}:`, err);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user