Jonathan Mace is a PhD student in the Computer Science department at Brown University, advised by Rodrigo Fonseca. Jonathan received his undergraduate degree in Mathematics and Computer Science from Oxford University in 2009, and originally hails from New Zealand. He is broadly interested in distributed systems, networking, and operating systems.

Research Summary

Jonathan’s current research centers on how to effectively monitor and troubleshoot distributed systems at runtime. In particular, when things go wrong in today’s systems it can be difficult to answer questions about causes of failures, uncover dependencies between components, or understand performance or resource usage. This is because logging and monitoring is typically configured a priori at development or deployment time, and is deployed in a component- or machine- centric way making it hard to coherently reason about end-to-end executions. Jonathan’s recent work on Pivot Tracing presents abstractions for cross-component monitoring to address these challenges. Pivot Tracing combines dynamic instrumentation with causal tracing techniques, and enables users to capture and correlate arbitrary statistics across application, component, and machine boundaries without needing to change or redeploy system code.