createLogger() — vite Function Reference
Architecture documentation for the createLogger() function in logger.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD 04e3b119_ae40_14a9_42ce_3951d83fc60d["createLogger()"] eca93de5_04d5_dda0_7ae6_2ceb5379ea81["logger.ts"] 04e3b119_ae40_14a9_42ce_3951d83fc60d -->|defined in| eca93de5_04d5_dda0_7ae6_2ceb5379ea81 58c4a210_68fe_1b4d_ed49_d59203f97ef1["resolveConfig()"] 58c4a210_68fe_1b4d_ed49_d59203f97ef1 -->|calls| 04e3b119_ae40_14a9_42ce_3951d83fc60d 53f0a505_9626_e709_c92b_e7f00c6e0bd7["loadConfigFromFile()"] 53f0a505_9626_e709_c92b_e7f00c6e0bd7 -->|calls| 04e3b119_ae40_14a9_42ce_3951d83fc60d 5db25367_d823_be14_869d_fc9affb91c51["runConfigHook()"] 5db25367_d823_be14_869d_fc9affb91c51 -->|calls| 04e3b119_ae40_14a9_42ce_3951d83fc60d b31a0f8d_a16d_4f07_c9e2_733cb9d546cd["getTimeFormatter()"] 04e3b119_ae40_14a9_42ce_3951d83fc60d -->|calls| b31a0f8d_a16d_4f07_c9e2_733cb9d546cd 62cf2425_32ce_8e8e_500a_902dc166b097["clearScreen()"] 04e3b119_ae40_14a9_42ce_3951d83fc60d -->|calls| 62cf2425_32ce_8e8e_500a_902dc166b097 style 04e3b119_ae40_14a9_42ce_3951d83fc60d fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/src/node/logger.ts lines 68–166
export function createLogger(
level: LogLevel = 'info',
options: LoggerOptions = {},
): Logger {
if (options.customLogger) {
return options.customLogger
}
const loggedErrors = new WeakSet<Error | RollupError>()
const {
prefix = '[vite]',
allowClearScreen = true,
console = globalThis.console,
} = options
const thresh = LogLevels[level]
const canClearScreen =
allowClearScreen && process.stdout.isTTY && !process.env.CI
const clear = canClearScreen ? clearScreen : () => {}
function format(type: LogType, msg: string, options: LogErrorOptions = {}) {
if (options.timestamp) {
let tag = ''
if (type === 'info') {
tag = colors.cyan(colors.bold(prefix))
} else if (type === 'warn') {
tag = colors.yellow(colors.bold(prefix))
} else {
tag = colors.red(colors.bold(prefix))
}
const environment = options.environment ? options.environment + ' ' : ''
return `${colors.dim(getTimeFormatter().format(new Date()))} ${tag} ${environment}${msg}`
} else {
return msg
}
}
function output(type: LogType, msg: string, options: LogErrorOptions = {}) {
if (thresh >= LogLevels[type]) {
const method = type === 'info' ? 'log' : type
if (options.error) {
loggedErrors.add(options.error)
}
if (canClearScreen) {
if (type === lastType && msg === lastMsg) {
sameCount++
clear()
console[method](
format(type, msg, options),
colors.yellow(`(x${sameCount + 1})`),
)
} else {
sameCount = 0
lastMsg = msg
lastType = type
if (options.clear) {
clear()
}
console[method](format(type, msg, options))
}
} else {
console[method](format(type, msg, options))
}
}
}
const warnedMessages = new Set<string>()
const logger: Logger = {
hasWarned: false,
info(msg, opts) {
output('info', msg, opts)
},
warn(msg, opts) {
logger.hasWarned = true
output('warn', msg, opts)
},
warnOnce(msg, opts) {
if (warnedMessages.has(msg)) return
logger.hasWarned = true
output('warn', msg, opts)
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does createLogger() do?
createLogger() is a function in the vite codebase, defined in packages/vite/src/node/logger.ts.
Where is createLogger() defined?
createLogger() is defined in packages/vite/src/node/logger.ts at line 68.
What does createLogger() call?
createLogger() calls 2 function(s): clearScreen, getTimeFormatter.
What calls createLogger()?
createLogger() is called by 3 function(s): loadConfigFromFile, resolveConfig, runConfigHook.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free