commit 971973252886be381197f01ee1f03c7edc7abf35 parent 3c4c1f894421b303c4fe62e9b9cea3225e611ba9 Author: Florian Quèze <florian@queze.net> Date: Thu, 9 Oct 2025 05:54:09 +0000 Bug 1993255 - make the treeherder log not log PROCESS-CRASH for crashes that didn't fail the job, r=jmaher. Differential Revision: https://phabricator.services.mozilla.com/D267997 Diffstat:
4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/testing/mozbase/mozcrash/mozcrash/mozcrash.py b/testing/mozbase/mozcrash/mozcrash/mozcrash.py @@ -168,10 +168,10 @@ def log_crashes( stackwalk_binary=stackwalk_binary, ): crash_count += 1 - if not quiet: - kwargs = info._asdict() - kwargs.pop("extra") - logger.crash(process=process, test=test, **kwargs) + kwargs = info._asdict() + kwargs.pop("extra") + kwargs["quiet"] = quiet + logger.crash(process=process, test=test, **kwargs) return crash_count diff --git a/testing/mozbase/mozlog/mozlog/formatters/tbplformatter.py b/testing/mozbase/mozlog/mozlog/formatters/tbplformatter.py @@ -105,12 +105,14 @@ class TbplFormatter(BaseFormatter): @output_subtests def crash(self, data): id = data["test"] if "test" in data else "pid: %s" % data["process"] + quiet = data.get("quiet", False) + crash_prefix = "INFO crashed process" if quiet else "PROCESS-CRASH" if data.get("java_stack"): # use "<exception> at <top frame>" as a crash signature for java exception sig = data["java_stack"].split("\n") sig = " ".join(sig[0:2]) - rv = ["PROCESS-CRASH | %s | %s\n[%s]" % (id, sig, data["java_stack"])] + rv = ["%s | %s | %s\n[%s]" % (crash_prefix, id, sig, data["java_stack"])] if data.get("reason"): rv.append("Mozilla crash reason: %s" % data["reason"]) @@ -121,7 +123,7 @@ class TbplFormatter(BaseFormatter): else: signature = data["signature"] if data["signature"] else "unknown top frame" reason = data.get("reason", "application crashed") - rv = ["PROCESS-CRASH | %s [%s] | %s " % (reason, signature, id)] + rv = ["%s | %s [%s] | %s " % (crash_prefix, reason, signature, id)] if data.get("process_type"): rv.append("Process type: {}".format(data["process_type"])) diff --git a/testing/mozbase/mozlog/mozlog/structuredlog.py b/testing/mozbase/mozlog/mozlog/structuredlog.py @@ -585,6 +585,7 @@ class StructuredLogger: Unicode("process_type", default=None, optional=True), List(Unicode, "stackwalk_errors", default=None), Unicode("subsuite", default=None, optional=True), + Boolean("quiet", default=False, optional=True), ) def crash(self, data): if data["stackwalk_errors"] is None: diff --git a/testing/xpcshell/runxpcshelltests.py b/testing/xpcshell/runxpcshelltests.py @@ -365,10 +365,7 @@ class XPCShellTestThread(Thread): Simple wrapper to check for crashes. On a remote system, this is more complex and we need to overload this function. """ - quiet = False - if self.crashAsPass: - quiet = True - + quiet = self.crashAsPass or self.retry return mozcrash.log_crashes( self.log, dump_directory, symbols_path, test=test_name, quiet=quiet )