diff --git a/runtime/bin/vmservice/server.dart b/runtime/bin/vmservice/server.dart index d622e62dbeb..051ea43ff64 100644 --- a/runtime/bin/vmservice/server.dart +++ b/runtime/bin/vmservice/server.dart @@ -127,7 +127,7 @@ class Server { _server = s; _server.listen(_requestHandler); if (display_message) { - print('VMService listening on $ip:$port'); + print('Observatory listening on http://$ip:$port'); } return s; }); diff --git a/runtime/vm/message_handler.cc b/runtime/vm/message_handler.cc index 32756b8f248..b1064a280b7 100644 --- a/runtime/vm/message_handler.cc +++ b/runtime/vm/message_handler.cc @@ -9,7 +9,7 @@ namespace dart { DECLARE_FLAG(bool, trace_isolates); - +DECLARE_FLAG(bool, trace_service_pause_events); class MessageHandlerTask : public ThreadPool::Task { public: @@ -231,6 +231,10 @@ void MessageHandler::TaskCallback() { if (!ok || !HasLivePorts()) { if (pause_on_exit()) { + if (FLAG_trace_service_pause_events && !paused_on_exit_) { + OS::PrintErr("Isolate %s paused before exiting. " + "Use the Observatory to release it.\n", name()); + } paused_on_exit_ = true; } else { if (FLAG_trace_isolates) { diff --git a/runtime/vm/service.cc b/runtime/vm/service.cc index eef5f057c93..5b3f7789177 100644 --- a/runtime/vm/service.cc +++ b/runtime/vm/service.cc @@ -32,6 +32,8 @@ namespace dart { DEFINE_FLAG(bool, trace_service, false, "Trace VM service requests."); +DEFINE_FLAG(bool, trace_service_pause_events, false, + "Trace VM service isolate pause events."); DECLARE_FLAG(bool, enable_type_checks); DECLARE_FLAG(bool, enable_asserts); diff --git a/tests/standalone/vmservice/test_helper.dart b/tests/standalone/vmservice/test_helper.dart index d7c580ec05e..fde93e047f9 100644 --- a/tests/standalone/vmservice/test_helper.dart +++ b/tests/standalone/vmservice/test_helper.dart @@ -140,7 +140,7 @@ class TestLauncher { var first = true; process.stdout.transform(UTF8.decoder) .transform(new LineSplitter()).listen((line) { - if (line.startsWith('VMService listening on ')) { + if (line.startsWith('Observatory listening on http://')) { RegExp portExp = new RegExp(r"\d+.\d+.\d+.\d+:(\d+)"); var port = portExp.firstMatch(line).group(1); portNumber = int.parse(port);