Log stack-trace for run-webkit-tests when interrupted
authorjbedard@apple.com <jbedard@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Oct 2017 14:59:28 +0000 (14:59 +0000)
committerjbedard@apple.com <jbedard@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Oct 2017 14:59:28 +0000 (14:59 +0000)
commit9251c1588e7bb1095f8ba52df94120489b203706
tree212bbde296153e7dfb16b63b9ea22e1b166bbc51
parenta8a683f75a731812cce6acb5d50ff65768baee29
Log stack-trace for run-webkit-tests when interrupted
https://bugs.webkit.org/show_bug.cgi?id=176393
<rdar://problem/34262310>

Reviewed by Darin Adler.

When run-webkit-tests is stuck, it is difficult to immediately tell
why. Saving a stack-trace when run-webkit-tests is terminated
or stopped with CNTRL-C will make such issues easier to debug.

* Scripts/webkitpy/common/interupt_debugging.py: Added.
(log_stack_trace): Given a Python frame object, log a stack trace to
the provided file.
(log_stack_trace_on_term): Attach a listener to SIGTERM so that a
stack-trace can be logged when a program is terminated.
(log_stack_trace_on_cntrl_c): Attach a listener to SIGINT so that a
stack-trace can be logged when a program is CNTRL-Ced.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main): Set handlers to log stack trace on interruption.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222709 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Tools/ChangeLog
Tools/Scripts/webkitpy/common/interupt_debugging.py [new file with mode: 0644]
Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py