@@ -8,7 +8,7 @@ import { Disposable, toDisposable } from 'vs/base/common/lifecycle';
8
8
import { IProcessEnvironment , OperatingSystem , isWindows } from 'vs/base/common/platform' ;
9
9
import { ProxyChannel } from 'vs/base/parts/ipc/common/ipc' ;
10
10
import { IConfigurationService } from 'vs/platform/configuration/common/configuration' ;
11
- import { ILogService , ILoggerService } from 'vs/platform/log/common/log' ;
11
+ import { ILogService , ILoggerService , LogLevel } from 'vs/platform/log/common/log' ;
12
12
import { RemoteLoggerChannelClient } from 'vs/platform/log/common/logIpc' ;
13
13
import { getResolvedShellEnv } from 'vs/platform/shell/node/shellEnv' ;
14
14
import { IPtyHostProcessReplayEvent } from 'vs/platform/terminal/common/capabilities/capabilities' ;
@@ -139,6 +139,11 @@ export class PtyHostService extends Disposable implements IPtyService {
139
139
const connection = this . _ptyHostStarter . start ( ) ;
140
140
const client = connection . client ;
141
141
142
+ // Log a full stack trace which will tell the exact reason the pty host is starting up
143
+ if ( this . _logService . getLevel ( ) === LogLevel . Trace ) {
144
+ this . _logService . trace ( 'PtyHostService#_startPtyHost' , new Error ( ) . stack ?. replace ( / ^ E r r o r / , '' ) ) ;
145
+ }
146
+
142
147
// Setup heartbeat service and trigger a heartbeat immediately to reset the timeouts
143
148
const heartbeatService = ProxyChannel . toService < IHeartbeatService > ( client . getChannel ( TerminalIpcChannels . Heartbeat ) ) ;
144
149
heartbeatService . onBeat ( ( ) => this . _handleHeartbeat ( ) ) ;
0 commit comments