(level: LogLevel, message: string, ...parameters: any[])
| 149 | } |
| 150 | |
| 151 | public log(level: LogLevel, message: string, ...parameters: any[]): void { |
| 152 | if (level === LogLevel.DEBUG && !Logger.debugEnabled) { |
| 153 | return |
| 154 | } |
| 155 | |
| 156 | message = util.format(message, ...parameters) |
| 157 | |
| 158 | let loggingFunction = console.log // eslint-disable-line no-console |
| 159 | switch (level) { |
| 160 | case LogLevel.SUCCESS: |
| 161 | message = chalk.green(message) |
| 162 | break |
| 163 | case LogLevel.WARN: |
| 164 | message = chalk.yellow(message) |
| 165 | loggingFunction = console.error |
| 166 | break |
| 167 | case LogLevel.ERROR: |
| 168 | message = chalk.red(message) |
| 169 | loggingFunction = console.error |
| 170 | break |
| 171 | case LogLevel.DEBUG: |
| 172 | message = chalk.gray(message) |
| 173 | break |
| 174 | } |
| 175 | |
| 176 | if (this.prefix) { |
| 177 | message = `${getLogPrefix(this.prefix)} ${message}` |
| 178 | } |
| 179 | |
| 180 | if (Logger.timestampEnabled) { |
| 181 | const date = new Date() |
| 182 | message = chalk.white(`[${date.toLocaleString()}] `) + message |
| 183 | } |
| 184 | |
| 185 | loggingFunction(message) |
| 186 | } |
| 187 | } |
| 188 | |
| 189 | /** |
no test coverage detected