import type { ProjectLocalConfig } from '@ones-open/cli-utils' import { ELoggerLevel, LoggerLevels } from './constants' function currentLogLevel() { const proccess_log_level = process.env.log_level const log_level = proccess_log_level !== 'undefined' ? proccess_log_level : ELoggerLevel.info return log_level as ELoggerLevel } function checkLegalLogLevel(level: string) { return Object.keys(LoggerLevels).includes(level) } async function recordCurrentLogLevel(localConfig?: ProjectLocalConfig) { let log_level try { log_level = localConfig?.local.log_level if (!checkLegalLogLevel(log_level as string)) { console.warn(`Illegal log_level: ${log_level}`) log_level = undefined } // eslint-disable-next-line no-empty } catch (e) {} process.env.log_level = log_level } export { currentLogLevel, recordCurrentLogLevel }