Skip to content

Commit 344d77e

Browse files
authored
feat(createLogger): allow custom prefix for logger (#2019)
1 parent da11d43 commit 344d77e

File tree

3 files changed

+21
-6
lines changed

3 files changed

+21
-6
lines changed

packages/vite/src/node/config.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,9 @@ export async function resolveConfig(
239239
}
240240

241241
// Define logger
242-
const logger = createLogger(config.logLevel, config.clearScreen)
242+
const logger = createLogger(config.logLevel, {
243+
allowClearScreen: config.clearScreen
244+
})
243245

244246
// user config may provide an alternative mode
245247
mode = config.mode || mode

packages/vite/src/node/index.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,13 @@ export type {
2626
DepOptimizationOptions
2727
} from './optimizer'
2828
export type { Plugin } from './plugin'
29-
export type { Logger, LogOptions, LogLevel, LogType } from './logger'
29+
export type {
30+
Logger,
31+
LogOptions,
32+
LogLevel,
33+
LogType,
34+
LoggerOptions
35+
} from './logger'
3036
export type {
3137
AliasOptions,
3238
ResolverFunction,

packages/vite/src/node/logger.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,17 @@ function clearScreen() {
3737
readline.clearScreenDown(process.stdout)
3838
}
3939

40+
export interface LoggerOptions {
41+
prefix?: string
42+
allowClearScreen?: boolean
43+
}
44+
4045
export function createLogger(
4146
level: LogLevel = 'info',
42-
allowClearScreen = true
47+
options: LoggerOptions = {}
4348
): Logger {
49+
const { prefix = '[vite]', allowClearScreen = true } = options
50+
4451
const thresh = LogLevels[level]
4552
const clear =
4653
allowClearScreen && process.stdout.isTTY && !process.env.CI
@@ -54,10 +61,10 @@ export function createLogger(
5461
if (options.timestamp) {
5562
const tag =
5663
type === 'info'
57-
? chalk.cyan.bold(`[vite]`)
64+
? chalk.cyan.bold(prefix)
5865
: type === 'warn'
59-
? chalk.yellow.bold(`[vite]`)
60-
: chalk.red.bold(`[vite]`)
66+
? chalk.yellow.bold(prefix)
67+
: chalk.red.bold(prefix)
6168
return `${chalk.dim(new Date().toLocaleTimeString())} ${tag} ${msg}`
6269
} else {
6370
return msg

0 commit comments

Comments
 (0)