import { TracingLogger } from "."; export class ConsoleTracingLogger implements TracingLogger { private prefix: string; constructor(prefix: string) { this.prefix = prefix; } private makePrefix(level: "info" | "warn" | "error"): string { return `[${new Date().toISOString()}] ${level} (${this.prefix}) > `; } public info(log: string) { console.log(this.makePrefix("info") + log); } public warn(log: string) { console.warn(this.makePrefix("warn") + log); } public error(log: string) { console.error(this.makePrefix("error") + log); } public createChild(prefix: string) { return new ConsoleTracingLogger(`${this.prefix} -> ${prefix}`); } }