mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-11 18:48:33 -05:00
27 lines
1.3 KiB
TypeScript
27 lines
1.3 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import { ILogService, DelegatedLogService, LogLevel } from 'vs/platform/log/common/log';
|
|
import { ExtHostLogServiceShape } from 'vs/workbench/api/common/extHost.protocol';
|
|
import { ExtensionHostLogFileName } from 'vs/workbench/services/extensions/common/extensions';
|
|
import { IExtHostInitDataService } from 'vs/workbench/api/common/extHostInitDataService';
|
|
import { Schemas } from 'vs/base/common/network';
|
|
import { SpdLogService } from 'vs/platform/log/node/spdlogService';
|
|
import { dirname } from 'vs/base/common/resources';
|
|
|
|
export class ExtHostLogService extends DelegatedLogService implements ILogService, ExtHostLogServiceShape {
|
|
|
|
constructor(
|
|
@IExtHostInitDataService initData: IExtHostInitDataService,
|
|
) {
|
|
if (initData.logFile.scheme !== Schemas.file) { throw new Error('Only file-logging supported'); }
|
|
super(new SpdLogService(ExtensionHostLogFileName, dirname(initData.logFile).fsPath, initData.logLevel));
|
|
}
|
|
|
|
$setLevel(level: LogLevel): void {
|
|
this.setLevel(level);
|
|
}
|
|
}
|