UNPKG

monaco-editor-core

Version:

A browser based code editor

38 lines (37 loc) 1.36 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { Disposable } from '../../../base/common/lifecycle.js'; import { MultiplexLogger } from './log.js'; export class LogService extends Disposable { constructor(primaryLogger, otherLoggers = []) { super(); this.logger = new MultiplexLogger([primaryLogger, ...otherLoggers]); this._register(primaryLogger.onDidChangeLogLevel(level => this.setLevel(level))); } get onDidChangeLogLevel() { return this.logger.onDidChangeLogLevel; } setLevel(level) { this.logger.setLevel(level); } getLevel() { return this.logger.getLevel(); } trace(message, ...args) { this.logger.trace(message, ...args); } debug(message, ...args) { this.logger.debug(message, ...args); } info(message, ...args) { this.logger.info(message, ...args); } warn(message, ...args) { this.logger.warn(message, ...args); } error(message, ...args) { this.logger.error(message, ...args); } }