From 33b821bab2e5ec95aa3bc100bd195471a32fd7a4 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Tue, 28 Feb 2023 00:58:27 -0800 Subject: [PATCH] fix #175396 (#175631) --- src/vs/code/node/sharedProcess/sharedProcessMain.ts | 2 +- src/vs/platform/log/common/log.ts | 8 ++++---- src/vs/platform/log/electron-main/loggerService.ts | 9 +++------ src/vs/platform/terminal/common/terminal.ts | 4 ---- src/vs/platform/terminal/node/ptyHostMain.ts | 7 ++++--- src/vs/platform/terminal/node/ptyHostService.ts | 4 ++-- src/vs/server/node/serverServices.ts | 5 ++--- src/vs/workbench/api/common/extHost.common.services.ts | 4 +--- src/vs/workbench/api/common/extHostLogService.ts | 6 +++++- src/vs/workbench/api/common/extHostOutput.ts | 5 +++-- src/vs/workbench/api/common/extensionHostMain.ts | 1 - src/vs/workbench/api/node/extHost.node.services.ts | 5 ++++- src/vs/workbench/api/worker/extHost.worker.services.ts | 4 ++++ .../extensions/browser/webWorkerExtensionHost.ts | 7 +------ .../services/extensions/common/extensionHostProtocol.ts | 2 -- .../workbench/services/extensions/common/extensions.ts | 2 -- .../services/extensions/common/remoteExtensionHost.ts | 6 +----- .../electron-sandbox/localProcessExtensionHost.ts | 9 +-------- .../services/remote/common/remoteAgentService.ts | 2 -- 19 files changed, 36 insertions(+), 56 deletions(-) diff --git a/src/vs/code/node/sharedProcess/sharedProcessMain.ts b/src/vs/code/node/sharedProcess/sharedProcessMain.ts index eeed5383617..5a6882fa5e5 100644 --- a/src/vs/code/node/sharedProcess/sharedProcessMain.ts +++ b/src/vs/code/node/sharedProcess/sharedProcessMain.ts @@ -386,7 +386,7 @@ class SharedProcessMain extends Disposable { shortGraceTime: LocalReconnectConstants.ShortGraceTime, scrollback: configurationService.getValue(TerminalSettingId.PersistentSessionScrollback) ?? 100 }, - localize('ptyHost', "Pty Host"), + false, configurationService, environmentService, logService, diff --git a/src/vs/platform/log/common/log.ts b/src/vs/platform/log/common/log.ts index 15c7187e7ff..59c7ee3c0d9 100644 --- a/src/vs/platform/log/common/log.ts +++ b/src/vs/platform/log/common/log.ts @@ -5,6 +5,7 @@ import { toErrorMessage } from 'vs/base/common/errorMessage'; import { Emitter, Event } from 'vs/base/common/event'; +import { hash } from 'vs/base/common/hash'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; import { ResourceMap } from 'vs/base/common/map'; import { isWindows } from 'vs/base/common/platform'; @@ -587,18 +588,17 @@ export abstract class AbstractLoggerService extends Disposable implements ILogge return this.getLoggerEntry(resourceOrId)?.logger; } - createLogger(resource: URI, options?: ILoggerOptions): ILogger; - createLogger(id: string, options?: ILoggerOptions): ILogger; createLogger(idOrResource: URI | string, options?: ILoggerOptions): ILogger { const resource = this.toResource(idOrResource); + const id = isString(idOrResource) ? idOrResource : (options?.id ?? hash(resource.toString()).toString(16)); let logger = this._loggers.get(resource)?.logger; const logLevel = options?.logLevel === 'always' ? LogLevel.Trace : options?.logLevel; if (!logger) { - logger = this.doCreateLogger(resource, logLevel ?? this.getLogLevel(resource) ?? this.logLevel, options); + logger = this.doCreateLogger(resource, logLevel ?? this.getLogLevel(resource) ?? this.logLevel, { ...options, id }); } const loggerEntry: LoggerEntry = { logger, - info: { resource, id: options?.id ?? resource.toString(), logLevel, name: options?.name, hidden: options?.hidden, extensionId: options?.extensionId, when: options?.when } + info: { resource, id, logLevel, name: options?.name, hidden: options?.hidden, extensionId: options?.extensionId, when: options?.when } }; this.registerLogger(loggerEntry.info); // TODO: @sandy081 Remove this once registerLogger can take ILogger diff --git a/src/vs/platform/log/electron-main/loggerService.ts b/src/vs/platform/log/electron-main/loggerService.ts index 134fc35f4c4..c191d7e7c17 100644 --- a/src/vs/platform/log/electron-main/loggerService.ts +++ b/src/vs/platform/log/electron-main/loggerService.ts @@ -36,17 +36,14 @@ export class LoggerMainService extends LoggerService implements ILoggerMainServi private readonly loggerResourcesByWindow = new ResourceMap(); - override createLogger(resource: URI, options?: ILoggerOptions, windowId?: number): ILogger; - override createLogger(id: string, options?: ILoggerOptions, windowId?: number): ILogger; override createLogger(idOrResource: URI | string, options?: ILoggerOptions, windowId?: number): ILogger { - const resource = this.toResource(idOrResource); if (windowId !== undefined) { - this.loggerResourcesByWindow.set(resource, windowId); + this.loggerResourcesByWindow.set(this.toResource(idOrResource), windowId); } try { - return super.createLogger(resource, options); + return super.createLogger(idOrResource, options); } catch (error) { - this.loggerResourcesByWindow.delete(resource); + this.loggerResourcesByWindow.delete(this.toResource(idOrResource)); throw error; } } diff --git a/src/vs/platform/terminal/common/terminal.ts b/src/vs/platform/terminal/common/terminal.ts index 4877f38c2b7..813a31ab443 100644 --- a/src/vs/platform/terminal/common/terminal.ts +++ b/src/vs/platform/terminal/common/terminal.ts @@ -116,10 +116,6 @@ export const enum TerminalSettingId { SmoothScrolling = 'terminal.integrated.smoothScrolling' } -export const enum TerminalLogConstants { - FileName = 'ptyhost' -} - export const enum PosixShellType { PowerShell = 'pwsh', Bash = 'bash', diff --git a/src/vs/platform/terminal/node/ptyHostMain.ts b/src/vs/platform/terminal/node/ptyHostMain.ts index a1627c3f854..1156e1c1cec 100644 --- a/src/vs/platform/terminal/node/ptyHostMain.ts +++ b/src/vs/platform/terminal/node/ptyHostMain.ts @@ -15,7 +15,7 @@ import { LogService } from 'vs/platform/log/common/logService'; import { LoggerService } from 'vs/platform/log/node/loggerService'; import product from 'vs/platform/product/common/product'; import { IProductService } from 'vs/platform/product/common/productService'; -import { IReconnectConstants, TerminalIpcChannels, TerminalLogConstants } from 'vs/platform/terminal/common/terminal'; +import { IReconnectConstants, TerminalIpcChannels } from 'vs/platform/terminal/common/terminal'; import { HeartbeatService } from 'vs/platform/terminal/node/heartbeatService'; import { PtyService } from 'vs/platform/terminal/node/ptyService'; @@ -30,8 +30,9 @@ const environmentService = new NativeEnvironmentService(parseArgs(process.argv, // Logging const loggerService = new LoggerService(LogLevel.Info, environmentService.logsHome); server.registerChannel(TerminalIpcChannels.Logger, new LoggerChannel(loggerService, () => DefaultURITransformer)); -const logger = loggerService.createLogger(TerminalLogConstants.FileName, { name: process.env.VSCODE_PTY_LOG_NAME ?? localize('ptyHost', "Pty Host") }); -delete process.env.VSCODE_PTY_LOG_NAME; +const isRemote = process.env.VSCODE_PTY_REMOTE === 'true'; +delete process.env.VSCODE_PTY_REMOTE; +const logger = loggerService.createLogger(isRemote ? 'remoteptyhost' : 'ptyhost', { name: isRemote ? localize('remotePtyHost', "Pty Host (Remote)") : localize('ptyHost', "Pty Host") }); const logService = new LogService(logger, [new ConsoleLogger()]); const heartbeatService = new HeartbeatService(); diff --git a/src/vs/platform/terminal/node/ptyHostService.ts b/src/vs/platform/terminal/node/ptyHostService.ts index 1c946d0cfdb..e8cd3dfaa0a 100644 --- a/src/vs/platform/terminal/node/ptyHostService.ts +++ b/src/vs/platform/terminal/node/ptyHostService.ts @@ -79,7 +79,7 @@ export class PtyHostService extends Disposable implements IPtyService { constructor( private readonly _reconnectConstants: IReconnectConstants, - private readonly loggerName: string, + private readonly isRemote: boolean, @IConfigurationService private readonly _configurationService: IConfigurationService, @IEnvironmentService private readonly _environmentService: INativeEnvironmentService, @ILogService private readonly _logService: ILogService, @@ -139,7 +139,7 @@ export class PtyHostService extends Disposable implements IPtyService { args: ['--type=ptyHost', '--logsPath', this._environmentService.logsHome.fsPath], env: { VSCODE_LAST_PTY_ID: lastPtyId, - VSCODE_PTY_LOG_NAME: this.loggerName, + VSCODE_PTY_REMOTE: this.isRemote, VSCODE_AMD_ENTRYPOINT: 'vs/platform/terminal/node/ptyHostMain', VSCODE_PIPE_LOGGING: 'true', VSCODE_VERBOSE_LOGGING: 'true', // transmit console logs from server to client, diff --git a/src/vs/server/node/serverServices.ts b/src/vs/server/node/serverServices.ts index 7e5208f9dcc..fb3b32d8c37 100644 --- a/src/vs/server/node/serverServices.ts +++ b/src/vs/server/node/serverServices.ts @@ -63,7 +63,6 @@ import { createURITransformer } from 'vs/workbench/api/node/uriTransformer'; import { ServerConnectionToken } from 'vs/server/node/serverConnectionToken'; import { ServerEnvironmentService, ServerParsedArgs } from 'vs/server/node/serverEnvironmentService'; import { REMOTE_TERMINAL_CHANNEL_NAME } from 'vs/workbench/contrib/terminal/common/remoteTerminalChannel'; -import { RemoteExtensionLogFileName } from 'vs/workbench/services/remote/common/remoteAgentService'; import { REMOTE_FILE_SYSTEM_CHANNEL_NAME } from 'vs/workbench/services/remote/common/remoteFileSystemProviderClient'; import { ExtensionHostStatusService, IExtensionHostStatusService } from 'vs/server/node/extensionHostStatusService'; import { IExtensionsScannerService } from 'vs/platform/extensionManagement/common/extensionsScannerService'; @@ -99,7 +98,7 @@ export async function setupServerServices(connectionToken: ServerConnectionToken services.set(ILoggerService, loggerService); socketServer.registerChannel('logger', new LoggerChannel(loggerService, (ctx: RemoteAgentConnectionContext) => getUriTransformer(ctx.remoteAuthority))); - const logger = loggerService.createLogger(RemoteExtensionLogFileName, { name: localize('remoteExtensionLog', "Remote Server") }); + const logger = loggerService.createLogger('remoteagent', { name: localize('remoteExtensionLog', "Server") }); const logService = new LogService(logger, [new ServerLogger(getLogLevel(environmentService))]); services.set(ILogService, logService); setTimeout(() => cleanupOlderLogs(environmentService.logsHome.fsPath).then(null, err => logService.error(err)), 10000); @@ -197,7 +196,7 @@ export async function setupServerServices(connectionToken: ServerConnectionToken shortGraceTime: ProtocolConstants.ReconnectionShortGraceTime, scrollback: configurationService.getValue(TerminalSettingId.PersistentSessionScrollback) ?? 100 }, - localize('ptyHost', "Remote Pty Host") + true ); services.set(IPtyService, ptyService); diff --git a/src/vs/workbench/api/common/extHost.common.services.ts b/src/vs/workbench/api/common/extHost.common.services.ts index 832f25d8f5a..d451acc438f 100644 --- a/src/vs/workbench/api/common/extHost.common.services.ts +++ b/src/vs/workbench/api/common/extHost.common.services.ts @@ -24,14 +24,12 @@ import { IExtHostSecretState, ExtHostSecretState } from 'vs/workbench/api/common import { ExtHostTelemetry, IExtHostTelemetry } from 'vs/workbench/api/common/extHostTelemetry'; import { ExtHostEditorTabs, IExtHostEditorTabs } from 'vs/workbench/api/common/extHostEditorTabs'; import { ExtHostLoggerService } from 'vs/workbench/api/common/extHostLoggerService'; -import { ILoggerService, ILogService } from 'vs/platform/log/common/log'; -import { ExtHostLogService } from 'vs/workbench/api/common/extHostLogService'; +import { ILoggerService } from 'vs/platform/log/common/log'; import { ExtHostVariableResolverProviderService, IExtHostVariableResolverProvider } from 'vs/workbench/api/common/extHostVariableResolverService'; import { ExtHostLocalizationService, IExtHostLocalizationService } from 'vs/workbench/api/common/extHostLocalizationService'; registerSingleton(IExtHostLocalizationService, ExtHostLocalizationService, InstantiationType.Delayed); registerSingleton(ILoggerService, ExtHostLoggerService, InstantiationType.Delayed); -registerSingleton(ILogService, ExtHostLogService, InstantiationType.Delayed); registerSingleton(IExtHostApiDeprecationService, ExtHostApiDeprecationService, InstantiationType.Delayed); registerSingleton(IExtHostCommands, ExtHostCommands, InstantiationType.Eager); registerSingleton(IExtHostConfiguration, ExtHostConfiguration, InstantiationType.Eager); diff --git a/src/vs/workbench/api/common/extHostLogService.ts b/src/vs/workbench/api/common/extHostLogService.ts index f66e8876735..d4baa5ae864 100644 --- a/src/vs/workbench/api/common/extHostLogService.ts +++ b/src/vs/workbench/api/common/extHostLogService.ts @@ -3,6 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ +import { localize } from 'vs/nls'; import { ILoggerService } from 'vs/platform/log/common/log'; import { LogService } from 'vs/platform/log/common/logService'; import { IExtHostInitDataService } from 'vs/workbench/api/common/extHostInitDataService'; @@ -12,10 +13,13 @@ export class ExtHostLogService extends LogService { declare readonly _serviceBrand: undefined; constructor( + isWorker: boolean, @ILoggerService loggerService: ILoggerService, @IExtHostInitDataService initData: IExtHostInitDataService, ) { - super(loggerService.createLogger(initData.logFile, { name: initData.logName })); + const id = initData.remote.isRemote ? 'remoteexthost' : isWorker ? 'workerexthost' : 'exthost'; + const name = initData.remote.isRemote ? localize('remote', "Extension Host (Remote)") : isWorker ? localize('worker', "Extension Host (Worker)") : localize('local', "Extension Host"); + super(loggerService.createLogger(id, { name })); } } diff --git a/src/vs/workbench/api/common/extHostOutput.ts b/src/vs/workbench/api/common/extHostOutput.ts index b632fe47b9c..502dd47fd47 100644 --- a/src/vs/workbench/api/common/extHostOutput.ts +++ b/src/vs/workbench/api/common/extHostOutput.ts @@ -174,8 +174,9 @@ export class ExtHostOutputService implements ExtHostOutputServiceShape { private async doCreateLogOutputChannel(name: string, logLevel: LogLevel | undefined, extension: IExtensionDescription): Promise { const extensionLogDir = await this.createExtensionLogDirectory(extension); - const file = this.extHostFileSystemInfo.extUri.joinPath(extensionLogDir, `${name.replace(/[\\/:\*\?"<>\|]/g, '')}.log`); - const id = file.toString(); + const fileName = name.replace(/[\\/:\*\?"<>\|]/g, ''); + const file = this.extHostFileSystemInfo.extUri.joinPath(extensionLogDir, `${fileName}.log`); + const id = `${extension.identifier.value}.${fileName}`; const logger = this.loggerService.createLogger(file, { id, name, logLevel, extensionId: extension.identifier.value }); return new ExtHostLogOutputChannel(id, name, logger, this.proxy, extension); } diff --git a/src/vs/workbench/api/common/extensionHostMain.ts b/src/vs/workbench/api/common/extensionHostMain.ts index 623777165ba..af40ecb71f9 100644 --- a/src/vs/workbench/api/common/extensionHostMain.ts +++ b/src/vs/workbench/api/common/extensionHostMain.ts @@ -182,7 +182,6 @@ export class ExtensionHostMain { initData.environment.extensionTelemetryLogResource = URI.revive(rpcProtocol.transformIncomingURIs(initData.environment.extensionTelemetryLogResource)); initData.nlsBaseUrl = URI.revive(rpcProtocol.transformIncomingURIs(initData.nlsBaseUrl)); initData.logsLocation = URI.revive(rpcProtocol.transformIncomingURIs(initData.logsLocation)); - initData.logFile = URI.revive(rpcProtocol.transformIncomingURIs(initData.logFile)); initData.workspace = rpcProtocol.transformIncomingURIs(initData.workspace); return initData; } diff --git a/src/vs/workbench/api/node/extHost.node.services.ts b/src/vs/workbench/api/node/extHost.node.services.ts index 71f2dcabb81..6785393c611 100644 --- a/src/vs/workbench/api/node/extHost.node.services.ts +++ b/src/vs/workbench/api/node/extHost.node.services.ts @@ -19,9 +19,11 @@ import { IExtHostTunnelService } from 'vs/workbench/api/common/extHostTunnelServ import { IExtensionStoragePaths } from 'vs/workbench/api/common/extHostStoragePaths'; import { ExtensionStoragePaths } from 'vs/workbench/api/node/extHostStoragePaths'; import { ExtHostLoggerService } from 'vs/workbench/api/node/extHostLoggerService'; -import { ILoggerService } from 'vs/platform/log/common/log'; +import { ILogService, ILoggerService } from 'vs/platform/log/common/log'; import { NodeExtHostVariableResolverProviderService } from 'vs/workbench/api/node/extHostVariableResolverService'; import { IExtHostVariableResolverProvider } from 'vs/workbench/api/common/extHostVariableResolverService'; +import { ExtHostLogService } from 'vs/workbench/api/common/extHostLogService'; +import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors'; // ######################################################################### // ### ### @@ -31,6 +33,7 @@ import { IExtHostVariableResolverProvider } from 'vs/workbench/api/common/extHos registerSingleton(IExtHostExtensionService, ExtHostExtensionService, InstantiationType.Eager); registerSingleton(ILoggerService, ExtHostLoggerService, InstantiationType.Delayed); +registerSingleton(ILogService, new SyncDescriptor(ExtHostLogService, [false], true)); registerSingleton(IExtensionStoragePaths, ExtensionStoragePaths, InstantiationType.Eager); registerSingleton(IExtHostDebugService, ExtHostDebugService, InstantiationType.Eager); diff --git a/src/vs/workbench/api/worker/extHost.worker.services.ts b/src/vs/workbench/api/worker/extHost.worker.services.ts index e284ed6752b..20ec7e138a6 100644 --- a/src/vs/workbench/api/worker/extHost.worker.services.ts +++ b/src/vs/workbench/api/worker/extHost.worker.services.ts @@ -3,8 +3,11 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ +import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors'; import { InstantiationType, registerSingleton } from 'vs/platform/instantiation/common/extensions'; +import { ILogService } from 'vs/platform/log/common/log'; import { IExtHostExtensionService } from 'vs/workbench/api/common/extHostExtensionService'; +import { ExtHostLogService } from 'vs/workbench/api/common/extHostLogService'; import { ExtensionStoragePaths, IExtensionStoragePaths } from 'vs/workbench/api/common/extHostStoragePaths'; import { ExtHostExtensionService } from 'vs/workbench/api/worker/extHostExtensionService'; @@ -14,5 +17,6 @@ import { ExtHostExtensionService } from 'vs/workbench/api/worker/extHostExtensio // ### ### // ######################################################################### +registerSingleton(ILogService, new SyncDescriptor(ExtHostLogService, [true], true)); registerSingleton(IExtHostExtensionService, ExtHostExtensionService, InstantiationType.Eager); registerSingleton(IExtensionStoragePaths, ExtensionStoragePaths, InstantiationType.Eager); diff --git a/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts b/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts index 6535298dc75..1936022d6b1 100644 --- a/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts +++ b/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts @@ -15,7 +15,6 @@ import { joinPath } from 'vs/base/common/resources'; import { URI } from 'vs/base/common/uri'; import { generateUuid } from 'vs/base/common/uuid'; import { IMessagePassingProtocol } from 'vs/base/parts/ipc/common/ipc'; -import { localize } from 'vs/nls'; import { ExtensionIdentifier, IExtensionDescription } from 'vs/platform/extensions/common/extensions'; import { ILabelService } from 'vs/platform/label/common/label'; import { ILayoutService } from 'vs/platform/layout/browser/layoutService'; @@ -30,7 +29,7 @@ import { parentOriginHash } from 'vs/workbench/browser/iframe'; import { IBrowserWorkbenchEnvironmentService } from 'vs/workbench/services/environment/browser/environmentService'; import { ExtensionHostExitCode, IExtensionHostInitData, MessageType, UIKind, createMessageOfType, isMessageOfType } from 'vs/workbench/services/extensions/common/extensionHostProtocol'; import { LocalWebWorkerRunningLocation } from 'vs/workbench/services/extensions/common/extensionRunningLocation'; -import { ExtensionHostExtensions, ExtensionHostLogFileName, ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions'; +import { ExtensionHostExtensions, ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions'; export interface IWebWorkerExtensionHostInitData { readonly allExtensions: IExtensionDescription[]; @@ -54,7 +53,6 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost private _protocol: IMessagePassingProtocol | null; private readonly _extensionHostLogsLocation: URI; - private readonly _extensionHostLogFile: URI; constructor( public readonly runningLocation: LocalWebWorkerRunningLocation, @@ -76,7 +74,6 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost this._protocolPromise = null; this._protocol = null; this._extensionHostLogsLocation = joinPath(this._environmentService.extHostLogsPath, 'webWorker'); - this._extensionHostLogFile = joinPath(this._extensionHostLogsLocation, `${ExtensionHostLogFileName}.log`); } private async _getWebWorkerExtensionHostIframeSrc(): Promise { @@ -314,8 +311,6 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost logLevel: this._logService.getLevel(), loggers: [...this._loggerService.getRegisteredLoggers()], logsLocation: this._extensionHostLogsLocation, - logFile: this._extensionHostLogFile, - logName: localize('name', "Worker Extension Host"), autoStart: (this.startup === ExtensionHostStartup.EagerAutoStart), remote: { authority: this._environmentService.remoteAuthority, diff --git a/src/vs/workbench/services/extensions/common/extensionHostProtocol.ts b/src/vs/workbench/services/extensions/common/extensionHostProtocol.ts index 77bfcd0b32d..5f96189fac1 100644 --- a/src/vs/workbench/services/extensions/common/extensionHostProtocol.ts +++ b/src/vs/workbench/services/extensions/common/extensionHostProtocol.ts @@ -35,8 +35,6 @@ export interface IExtensionHostInitData { logLevel: LogLevel; loggers: UriDto[]; logsLocation: URI; - logFile: URI; - logName: string; autoStart: boolean; remote: { isRemote: boolean; authority: string | undefined; connectionData: IRemoteConnectionData | null }; consoleForward: { includeStack: boolean; logNative: boolean }; diff --git a/src/vs/workbench/services/extensions/common/extensions.ts b/src/vs/workbench/services/extensions/common/extensions.ts index 0779979561d..3b8776db4f2 100644 --- a/src/vs/workbench/services/extensions/common/extensions.ts +++ b/src/vs/workbench/services/extensions/common/extensions.ts @@ -304,8 +304,6 @@ export class ExtensionPointContribution { } } -export const ExtensionHostLogFileName = 'exthost'; - export interface IWillActivateEvent { readonly event: string; readonly activation: Promise; diff --git a/src/vs/workbench/services/extensions/common/remoteExtensionHost.ts b/src/vs/workbench/services/extensions/common/remoteExtensionHost.ts index 5abe72600c2..828e980da68 100644 --- a/src/vs/workbench/services/extensions/common/remoteExtensionHost.ts +++ b/src/vs/workbench/services/extensions/common/remoteExtensionHost.ts @@ -8,11 +8,9 @@ import { Emitter, Event } from 'vs/base/common/event'; import { Disposable } from 'vs/base/common/lifecycle'; import { Schemas } from 'vs/base/common/network'; import * as platform from 'vs/base/common/platform'; -import { joinPath } from 'vs/base/common/resources'; import { URI } from 'vs/base/common/uri'; import { IMessagePassingProtocol } from 'vs/base/parts/ipc/common/ipc'; import { PersistentProtocol } from 'vs/base/parts/ipc/common/ipc.net'; -import { localize } from 'vs/nls'; import { IExtensionHostDebugService } from 'vs/platform/debug/common/extensionHostDebug'; import { ExtensionIdentifier, IExtensionDescription } from 'vs/platform/extensions/common/extensions'; import { ILabelService } from 'vs/platform/label/common/label'; @@ -28,7 +26,7 @@ import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/ import { parseExtensionDevOptions } from 'vs/workbench/services/extensions/common/extensionDevOptions'; import { IExtensionHostInitData, MessageType, UIKind, createMessageOfType, isMessageOfType } from 'vs/workbench/services/extensions/common/extensionHostProtocol'; import { RemoteRunningLocation } from 'vs/workbench/services/extensions/common/extensionRunningLocation'; -import { ExtensionHostExtensions, ExtensionHostLogFileName, ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions'; +import { ExtensionHostExtensions, ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions'; export interface IRemoteExtensionHostInitData { readonly connectionData: IRemoteConnectionData | null; @@ -247,8 +245,6 @@ export class RemoteExtensionHost extends Disposable implements IExtensionHost { logLevel: this._logService.getLevel(), loggers: [...this._loggerService.getRegisteredLoggers()], logsLocation: remoteInitData.extensionHostLogsPath, - logFile: joinPath(remoteInitData.extensionHostLogsPath, `${ExtensionHostLogFileName}.log`), - logName: localize('remote extension host Log', "Remote Extension Host"), autoStart: (this.startup === ExtensionHostStartup.EagerAutoStart), uiKind: platform.isWeb ? UIKind.Web : UIKind.Desktop }; diff --git a/src/vs/workbench/services/extensions/electron-sandbox/localProcessExtensionHost.ts b/src/vs/workbench/services/extensions/electron-sandbox/localProcessExtensionHost.ts index e0f8f86298e..be92316722a 100644 --- a/src/vs/workbench/services/extensions/electron-sandbox/localProcessExtensionHost.ts +++ b/src/vs/workbench/services/extensions/electron-sandbox/localProcessExtensionHost.ts @@ -12,7 +12,6 @@ import { Disposable, DisposableStore, toDisposable } from 'vs/base/common/lifecy import * as objects from 'vs/base/common/objects'; import * as platform from 'vs/base/common/platform'; import { removeDangerousEnvVariables } from 'vs/base/common/processes'; -import { joinPath } from 'vs/base/common/resources'; import { StopWatch } from 'vs/base/common/stopwatch'; import { withNullAsUndefined } from 'vs/base/common/types'; import { URI } from 'vs/base/common/uri'; @@ -40,7 +39,7 @@ import { IShellEnvironmentService } from 'vs/workbench/services/environment/elec import { MessagePortExtHostConnection, writeExtHostConnection } from 'vs/workbench/services/extensions/common/extensionHostEnv'; import { IExtensionHostInitData, MessageType, NativeLogMarkers, UIKind, isMessageOfType } from 'vs/workbench/services/extensions/common/extensionHostProtocol'; import { LocalProcessRunningLocation } from 'vs/workbench/services/extensions/common/extensionRunningLocation'; -import { ExtensionHostExtensions, ExtensionHostLogFileName, ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions'; +import { ExtensionHostExtensions, ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions'; import { IHostService } from 'vs/workbench/services/host/browser/host'; import { ILifecycleService, WillShutdownEvent } from 'vs/workbench/services/lifecycle/common/lifecycle'; import { parseExtensionDevOptions } from '../common/extensionDevOptions'; @@ -124,8 +123,6 @@ export class NativeLocalProcessExtensionHost implements IExtensionHost { private _extensionHostProcess: ExtensionHostProcess | null; private _messageProtocol: Promise | null; - private readonly _extensionHostLogFile: URI; - constructor( public readonly runningLocation: LocalProcessRunningLocation, public readonly startup: ExtensionHostStartup.EagerAutoStart | ExtensionHostStartup.EagerManualStart, @@ -160,8 +157,6 @@ export class NativeLocalProcessExtensionHost implements IExtensionHost { this._extensionHostProcess = null; this._messageProtocol = null; - this._extensionHostLogFile = joinPath(this._environmentService.extHostLogsPath, `${ExtensionHostLogFileName}.log`); - this._toDispose.add(this._onExit); this._toDispose.add(this._lifecycleService.onWillShutdown(e => this._onWillShutdown(e))); this._toDispose.add(this._extensionHostDebugService.onClose(event => { @@ -473,8 +468,6 @@ export class NativeLocalProcessExtensionHost implements IExtensionHost { logLevel: this._logService.getLevel(), loggers: [...this._loggerService.getRegisteredLoggers()], logsLocation: this._environmentService.extHostLogsPath, - logFile: this._extensionHostLogFile, - logName: nls.localize('extension host Log', "Extension Host"), autoStart: (this.startup === ExtensionHostStartup.EagerAutoStart), uiKind: UIKind.Desktop }; diff --git a/src/vs/workbench/services/remote/common/remoteAgentService.ts b/src/vs/workbench/services/remote/common/remoteAgentService.ts index abaf81a080e..ab505eb11ce 100644 --- a/src/vs/workbench/services/remote/common/remoteAgentService.ts +++ b/src/vs/workbench/services/remote/common/remoteAgentService.ts @@ -11,8 +11,6 @@ import { Event } from 'vs/base/common/event'; import { PersistentConnectionEvent, ISocketFactory } from 'vs/platform/remote/common/remoteAgentConnection'; import { ITelemetryData, TelemetryLevel } from 'vs/platform/telemetry/common/telemetry'; -export const RemoteExtensionLogFileName = 'remoteagent'; - export const IRemoteAgentService = createDecorator('remoteAgentService'); export interface IRemoteAgentService {