logger.ts — drizzle-orm Source File
Architecture documentation for logger.ts, a typescript file in the drizzle-orm codebase. 1 imports, 1 dependents.
Entity Profile
Dependency Diagram
graph LR 60da011b_729a_992e_0865_db2038e618a2["logger.ts"] 27705a9d_afe9_57dd_8c97_e52d8a67d426["entity.ts"] 60da011b_729a_992e_0865_db2038e618a2 --> 27705a9d_afe9_57dd_8c97_e52d8a67d426 99737bc3_a631_a054_9291_f966c791930f["utils.ts"] 99737bc3_a631_a054_9291_f966c791930f --> 60da011b_729a_992e_0865_db2038e618a2 style 60da011b_729a_992e_0865_db2038e618a2 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { entityKind } from '~/entity.ts';
export interface Logger {
logQuery(query: string, params: unknown[]): void;
}
export interface LogWriter {
write(message: string): void;
}
export class ConsoleLogWriter implements LogWriter {
static readonly [entityKind]: string = 'ConsoleLogWriter';
write(message: string) {
console.log(message);
}
}
export class DefaultLogger implements Logger {
static readonly [entityKind]: string = 'DefaultLogger';
readonly writer: LogWriter;
constructor(config?: { writer: LogWriter }) {
this.writer = config?.writer ?? new ConsoleLogWriter();
}
logQuery(query: string, params: unknown[]): void {
const stringifiedParams = params.map((p) => {
try {
return JSON.stringify(p);
} catch {
return String(p);
}
});
const paramsStr = stringifiedParams.length ? ` -- params: [${stringifiedParams.join(', ')}]` : '';
this.writer.write(`Query: ${query}${paramsStr}`);
}
}
export class NoopLogger implements Logger {
static readonly [entityKind]: string = 'NoopLogger';
logQuery(): void {
// noop
}
}
Domain
Subdomains
Dependencies
- entity.ts
Imported By
Source
Frequently Asked Questions
What does logger.ts do?
logger.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleORM domain, DatabaseDrivers subdomain.
What does logger.ts depend on?
logger.ts imports 1 module(s): entity.ts.
What files import logger.ts?
logger.ts is imported by 1 file(s): utils.ts.
Where is logger.ts in the architecture?
logger.ts is located at drizzle-orm/src/logger.ts (domain: DrizzleORM, subdomain: DatabaseDrivers, directory: drizzle-orm/src).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free