Bug 1561737 - Log full exception traceback from android gtest; r=bc
authorGeoff Brown <gbrown@mozilla.com>
Thu, 27 Jun 2019 09:26:35 +0000
changeset 543189 5616b96450dcd23cd16c4cebb099bfbc79c6b170
parent 543188 d3f8d2b25603a61597f89035a31156575d932402
child 543190 36f11c1d8950e9106831a71c60fa6336bc0df606
push id2131
push userffxbld-merge
push dateMon, 26 Aug 2019 18:30:20 +0000
treeherdermozilla-release@b19ffb3ca153 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbc
bugs1561737
milestone69.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 1561737 - Log full exception traceback from android gtest; r=bc Including the traceback info will include the exception name, like "ADBError" which should trigger the android-em task retry; it also provides more debugging info. Differential Revision: https://phabricator.services.mozilla.com/D36116
testing/gtest/remotegtests.py
--- a/testing/gtest/remotegtests.py
+++ b/testing/gtest/remotegtests.py
@@ -11,16 +11,17 @@ from optparse import OptionParser
 import datetime
 import glob
 import os
 import posixpath
 import shutil
 import sys
 import tempfile
 import time
+import traceback
 
 import mozcrash
 import mozdevice
 import mozinfo
 import mozlog
 
 LOGGER_NAME = 'gtest'
 log = mozlog.unstructured.getLogger(LOGGER_NAME)
@@ -382,16 +383,17 @@ def main():
                                   options.shuffle, test_filter, options.package,
                                   options.adb_path, options.device_serial,
                                   options.remote_test_root, options.libxul_path,
                                   options.symbols_path)
     except KeyboardInterrupt:
         log.info("gtest | Received keyboard interrupt")
     except Exception as e:
         log.error(str(e))
+        traceback.print_exc()
         if isinstance(e, mozdevice.ADBTimeoutError):
             device_exception = True
     finally:
         if not device_exception:
             tester.cleanup()
     sys.exit(0 if result else 1)