MCPcopy
hub / github.com/prisma/prisma / ConsoleSink

Class ConsoleSink

packages/query-plan-executor/src/log/sink.ts:15–50  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13 * A log sink that writes log events to the console.
14 */
15export class ConsoleSink implements LogSink {
16 readonly #formatter: ConsoleFormatter
17
18 constructor(formatter: ConsoleFormatter) {
19 this.#formatter = formatter
20 }
21
22 write(event: LogEvent): void {
23 const parts = this.#formatter.format(event)
24
25 switch (event.level) {
26 case 'debug':
27 console.debug(...parts)
28 break
29
30 case 'query':
31 console.log(...parts)
32 break
33
34 case 'info':
35 console.info(...parts)
36 break
37
38 case 'warn':
39 console.warn(...parts)
40 break
41
42 case 'error':
43 console.error(...parts)
44 break
45
46 default:
47 throw new Error(`Invalid log level: ${event.level satisfies never}`)
48 }
49 }
50}
51
52/**
53 * A log sink that captures log events in memory.

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected