Skip to content

Commit 7d26350

Browse files
authored
add more print traces in hot runner workflow (#148258)
In service of flutter/flutter#146879. See flutter/flutter#146879 (comment) in particular for the purpose of this PR. This adds a few more `printTrace` calls to try to see where we are getting stuck.
1 parent a36ff80 commit 7d26350

File tree

4 files changed

+17
-8
lines changed

4 files changed

+17
-8
lines changed

packages/flutter_tools/lib/src/isolated/resident_web_runner.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ class ResidentWebRunner extends ResidentRunner {
172172
final vmservice.VmService? service = _connectionResult?.vmService;
173173
final Uri websocketUri = Uri.parse(_connectionResult!.debugConnection!.uri);
174174
final Uri httpUri = _httpUriFromWebsocketUri(websocketUri);
175-
return _instance ??= FlutterVmService(service!, wsAddress: websocketUri, httpAddress: httpUri);
175+
return _instance ??= FlutterVmService(service!, wsAddress: websocketUri, httpAddress: httpUri, logger: _logger);
176176
}
177177

178178
FlutterVmService? _instance;

packages/flutter_tools/lib/src/vmservice.dart

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -417,7 +417,7 @@ Future<FlutterVmService> _connect(
417417
// This call is to ensure we are able to establish a connection instead of
418418
// keeping on trucking and failing farther down the process.
419419
await delegateService.getVersion();
420-
return FlutterVmService(service, httpAddress: httpUri, wsAddress: wsUri);
420+
return FlutterVmService(service, httpAddress: httpUri, wsAddress: wsUri, logger: logger);
421421
}
422422

423423
String _validateRpcStringParam(String methodName, Map<String, Object?> params, String paramName) {
@@ -486,11 +486,13 @@ class FlutterVmService {
486486
this.service, {
487487
this.wsAddress,
488488
this.httpAddress,
489-
});
489+
required Logger logger,
490+
}) : _logger = logger;
490491

491492
final vm_service.VmService service;
492493
final Uri? wsAddress;
493494
final Uri? httpAddress;
495+
final Logger _logger;
494496

495497
Future<vm_service.Response?> callMethodWrapper(
496498
String method, {
@@ -569,6 +571,7 @@ class FlutterVmService {
569571
required Uri main,
570572
required Uri assetsDirectory,
571573
}) async {
574+
_logger.printTrace('Running $main in view $viewId...');
572575
try {
573576
await service.streamListen(vm_service.EventStreams.kIsolate);
574577
} on vm_service.RPCError {
@@ -577,6 +580,7 @@ class FlutterVmService {
577580
final Future<void> onRunnable = service.onIsolateEvent.firstWhere((vm_service.Event event) {
578581
return event.kind == vm_service.EventKind.kIsolateRunnable;
579582
});
583+
_logger.printTrace('Calling $kRunInViewMethod...');
580584
await callMethodWrapper(
581585
kRunInViewMethod,
582586
args: <String, Object>{
@@ -585,7 +589,9 @@ class FlutterVmService {
585589
'assetDirectory': assetsDirectory.toString(),
586590
},
587591
);
592+
_logger.printTrace('Finished $kRunInViewMethod');
588593
await onRunnable;
594+
_logger.printTrace('Finished running $main in view $viewId');
589595
}
590596

591597
/// Renders the last frame with additional raster tracing enabled.
@@ -905,9 +911,11 @@ class FlutterVmService {
905911
Duration delay = const Duration(milliseconds: 50),
906912
}) async {
907913
while (true) {
914+
_logger.printTrace('Calling _flutter.listViews...');
908915
final vm_service.Response? response = await callMethodWrapper(
909916
kListViewsMethod,
910917
);
918+
_logger.printTrace('Response from _flutter.listViews: ${json.encode(response?.json)}');
911919
if (response == null) {
912920
// The service may have disappeared mid-request.
913921
// Return an empty list now, and let the shutdown logic elsewhere deal

packages/flutter_tools/test/general.shard/vmservice_test.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ void main() {
167167

168168
testWithoutContext('setAssetDirectory forwards arguments correctly', () async {
169169
final MockVMService mockVMService = MockVMService();
170-
final FlutterVmService flutterVmService = FlutterVmService(mockVMService);
170+
final FlutterVmService flutterVmService = FlutterVmService(mockVMService, logger: BufferLogger.test());
171171

172172
await flutterVmService.setAssetDirectory(
173173
assetsDirectory: Uri(path: 'abc', scheme: 'file'),
@@ -186,7 +186,7 @@ void main() {
186186

187187
testWithoutContext('setAssetDirectory forwards arguments correctly - windows', () async {
188188
final MockVMService mockVMService = MockVMService();
189-
final FlutterVmService flutterVmService = FlutterVmService(mockVMService);
189+
final FlutterVmService flutterVmService = FlutterVmService(mockVMService, logger: BufferLogger.test());
190190

191191
await flutterVmService.setAssetDirectory(
192192
assetsDirectory: Uri(path: 'C:/Users/Tester/AppData/Local/Temp/hello_worldb42a6da5/hello_world/build/flutter_assets', scheme: 'file'),
@@ -207,7 +207,7 @@ void main() {
207207

208208
testWithoutContext('getSkSLs forwards arguments correctly', () async {
209209
final MockVMService mockVMService = MockVMService();
210-
final FlutterVmService flutterVmService = FlutterVmService(mockVMService);
210+
final FlutterVmService flutterVmService = FlutterVmService(mockVMService, logger: BufferLogger.test());
211211

212212
await flutterVmService.getSkSLs(viewId: 'abc');
213213

@@ -220,7 +220,7 @@ void main() {
220220

221221
testWithoutContext('flushUIThreadTasks forwards arguments correctly', () async {
222222
final MockVMService mockVMService = MockVMService();
223-
final FlutterVmService flutterVmService = FlutterVmService(mockVMService);
223+
final FlutterVmService flutterVmService = FlutterVmService(mockVMService, logger: BufferLogger.test());
224224

225225
await flutterVmService.flushUIThreadTasks(uiIsolateId: 'def');
226226

packages/flutter_tools/test/src/fake_vm_services.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import 'dart:async';
66

7+
import 'package:flutter_tools/src/base/logger.dart';
78
import 'package:flutter_tools/src/convert.dart';
89
import 'package:flutter_tools/src/vmservice.dart';
910
import 'package:test/test.dart' hide test;
@@ -22,7 +23,7 @@ class FakeVmServiceHost {
2223
_vmService = FlutterVmService(vm_service.VmService(
2324
_input.stream,
2425
_output.add,
25-
), httpAddress: httpAddress, wsAddress: wsAddress);
26+
), httpAddress: httpAddress, wsAddress: wsAddress, logger: BufferLogger.test());
2627
_applyStreamListen();
2728
_output.stream.listen((String data) {
2829
final Map<String, Object?> request = json.decode(data) as Map<String, Object?>;

0 commit comments

Comments
 (0)