Skip to content

Commit

Permalink
refactor: Better fix for memory issue
Browse files Browse the repository at this point in the history
  • Loading branch information
smessie committed Sep 13, 2024
1 parent 2619d05 commit e62f8b1
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions src/utils/logUtil.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,24 +9,25 @@ consoleTransport.level =
? "debug"
: "info");

const classLoggers = new Map<string, Logger>();
const classLoggers = new WeakMap<Constructor, Logger>();
const stringLoggers = new Map<string, Logger>();

export function getLoggerFor(loggable: string | Instance): Logger {
let logger: Logger;
if (typeof loggable === "string") {
if (classLoggers.has(loggable)) {
logger = classLoggers.get(loggable)!;
if (stringLoggers.has(loggable)) {
logger = stringLoggers.get(loggable)!;
} else {
logger = createLogger(loggable);
classLoggers.set(loggable, logger);
stringLoggers.set(loggable, logger);
}
} else {
const { constructor } = loggable;
if (classLoggers.has(constructor.name)) {
logger = classLoggers.get(constructor.name)!;
if (classLoggers.has(constructor)) {
logger = classLoggers.get(constructor)!;
} else {
logger = createLogger(constructor.name);
classLoggers.set(constructor.name, logger);
classLoggers.set(constructor, logger);
}
}
return logger;
Expand Down

0 comments on commit e62f8b1

Please sign in to comment.