Rivet: Browser-agnostic Remote Debugging for Web Applications

Abstract

Rivet is the first fully-featured, browser-agnostic re-mote debugger for web applications. Using Rivet, de-velopers can inspect and modify the state of live web pages that are running inside unmodified end-user web browsers. This allows developers to explore real applica-tion bugs in the context of the actual machines on which those bugs occur. To make an application Rivet-aware, developers simply add the Rivet JavaScript library to the client-side portion of the application. Later, when a user detects a problem with the application, the user informs Rivet; in turn, Rivet pauses the application and notifies a remote debug server that a debuggable session is avail-able. The server can launch an interactive debugger front-end for a human developer, or use Rivet’s live patching mechanism to automatically install a fix on the client or run diagnostics for offline analysis. Experiments show that Rivet imposes negligible overhead during normal ap-plication operation. At debug time, Rivet’s network foot-print is small, and Rivet is computationally fast enough to support non-trivial diagnostics and live patches.

Similar works

Full text

thumbnail-image
oai:CiteSeerX.psu:10.1.1.905.5742Last time updated on 11/1/2017

This paper was published in CiteSeerX.

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.