Framework-Aware Debugging with Stack Tailoring

Onderzoeksoutput: Conference paper

Samenvatting

Debugging applications that execute within a framework is not always easy:
the call-stack offered to developers is often a mix-up of stack frames that belong to different frameworks, introducing an unnecessary noise that prevents developers from focusing on the debugging task.
Moreover, relevant application code is not always available in the call-stack because it may have already returned, or is available in another thread.
In such cases, manually gathering all relevant information from these different sources is not only cumbersome but also costly.

In this paper we introduce Sarto, a call-stack instrumentation layer that allows developers to tailor the stack to make debugging framework-aware.
The goal is to improve the quality and amount information present in the call-stack to reduce debugging time without impacting the execution time.
Sarto proposes a set of six stack operations that combined hide irrelevant information, introduce missing information, and relate dispersed debugging sources before this is fed to the debugger.

We validate Sarto by applying it to four application cases using inherently different frameworks: unit testing, web server, remote promises and big data processing.
We showcase our experiences in using Sarto in the different frameworks, and perform some performance benchmarks to demonstrate that Sarto does not generate noticeable overhead when instrumenting a call-stack.
We also show that our solution reduces by half the amount of data stored to debug similar exceptions happening in a parallel setup.
Originele taal-2English
TitelProceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages (DLS '20)
RedacteurenMatthew Flatt
UitgeverijACM
Pagina's71-84
Aantal pagina's14
ISBN van elektronische versie9781450381758
ISBN van geprinte versie978-1-4503-8175-8/20/11
DOI's
StatusPublished - 17 nov 2020
EvenementDynamic Languages Symposium 2020 -
Duur: 18 nov 202019 nov 2020
https://conf.researchr.org/home/dls-2020

Publicatie series

NaamDLS 2020 - Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages - Co-located with SPLASH 2020

Conference

ConferenceDynamic Languages Symposium 2020
Verkorte titelDLS '20
Periode18/11/2019/11/20
Internet adres

Vingerafdruk Duik in de onderzoeksthema's van 'Framework-Aware Debugging with Stack Tailoring'. Samen vormen ze een unieke vingerafdruk.

Citeer dit