Bug 1519862 - Improve logging for crashes, r=ato
authorJames Graham <james@hoppipolla.co.uk>
Thu, 17 Jan 2019 10:59:49 +0000
changeset 515073 c1a9c866d74b8bdfc70409cef5cdad5bc04c9e41
parent 515072 b6e31c3bfb6e44a078e416e6bf68a842cffb4e36
child 515074 3d96125d18d78d126998a3c20a5592bd95809ca1
push id1953
push userffxbld-merge
push dateMon, 11 Mar 2019 12:10:20 +0000
treeherdermozilla-release@9c35dcbaa899 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersato
bugs1519862
milestone66.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1519862 - Improve logging for crashes, r=ato Differential Revision: https://phabricator.services.mozilla.com/D16838
testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executormarionette.py
@@ -590,31 +590,34 @@ class ExecuteAsyncScriptRun(object):
             self.logger.debug("Timed out waiting for a result")
             self.result = False, ("EXTERNAL-TIMEOUT", None)
         elif self.result[1] is None:
             # We didn't get any data back from the test, so check if the
             # browser is still responsive
             if self.protocol.is_alive:
                 self.result = False, ("INTERNAL-ERROR", None)
             else:
+                self.logger.info("Browser not responding, setting status to CRASH")
                 self.result = False, ("CRASH", None)
         return self.result
 
     def _run(self):
         try:
             self.result = True, self.func(self.protocol, self.url, self.timeout)
         except errors.ScriptTimeoutException:
             self.logger.debug("Got a marionette timeout")
             self.result = False, ("EXTERNAL-TIMEOUT", None)
         except IOError:
             # This can happen on a crash
             # Also, should check after the test if the firefox process is still running
             # and otherwise ignore any other result and set it to crash
+            self.logger.info("IOError on command, setting status to CRASH")
             self.result = False, ("CRASH", None)
         except errors.NoSuchWindowException:
+            self.logger.info("NoSuchWindowException on command, setting status to CRASH")
             self.result = False, ("CRASH", None)
         except Exception as e:
             message = getattr(e, "message", "")
             if message:
                 message += "\n"
             message += traceback.format_exc(e)
             self.logger.warning(traceback.format_exc())
             self.result = False, ("INTERNAL-ERROR", e)