Pivot Tracing: Dynamic Causal Monitoring for Distributed Systems

Monitoring and troubleshooting distributed systems is notoriously difficult; potential problems are complex, varied, and unpredictable. The monitoring and diagnosis tools commonly used today—logs, counters, and metrics—have two important limitations: what gets recorded is defined a priori , and the...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on computer systems 2018-12, Vol.35 (4), p.1-28
Hauptverfasser: Mace, Jonathan, Roelke, Ryan, Fonseca, Rodrigo
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 28
container_issue 4
container_start_page 1
container_title ACM transactions on computer systems
container_volume 35
creator Mace, Jonathan
Roelke, Ryan
Fonseca, Rodrigo
description Monitoring and troubleshooting distributed systems is notoriously difficult; potential problems are complex, varied, and unpredictable. The monitoring and diagnosis tools commonly used today—logs, counters, and metrics—have two important limitations: what gets recorded is defined a priori , and the information is recorded in a component- or machine-centric way, making it extremely hard to correlate events that cross these boundaries. This article presents Pivot Tracing, a monitoring framework for distributed systems that addresses both limitations by combining dynamic instrumentation with a novel relational operator: the happened-before join. Pivot Tracing gives users, at runtime, the ability to define arbitrary metrics at one point of the system, while being able to select, filter, and group by events meaningful at other parts of the system, even when crossing component or machine boundaries. We have implemented a prototype of Pivot Tracing for Java-based systems and evaluate it on a heterogeneous Hadoop cluster comprising HDFS, HBase, MapReduce, and YARN. We show that Pivot Tracing can effectively identify a diverse range of root causes such as software bugs, misconfiguration, and limping hardware. We show that Pivot Tracing is dynamic, extensible, and enables cross-tier analysis between inter-operating applications, with low execution overhead.
doi_str_mv 10.1145/3208104
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2283282870</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2283282870</sourcerecordid><originalsourceid>FETCH-LOGICAL-c215t-a1d333b232152a378ca81e193cd71a65f25b82ba7b031cf51ff45d38049f7cec3</originalsourceid><addsrcrecordid>eNotT0tLAzEYDKLgWot_QfDgKfo9EpMepfiCgj2055DNJrJFuzXZCv57I-1pmGEejBBXCHeISt8zgUVQJ6JBrY00zHwqGjCsJIHBc3FRygYAqk6NmC77n2G8XmUf-u3HpThL_rPE6REnYv38tJq_ysX7y9v8cSEDoR6lx66mW-LKyLOxwVuMOOPQGfQPOpFuLbXetMAYksaUlO7YgpolE2Lgibg59O7y8L2PZXSbYZ-3ddIRWSZL1kB13R5cIQ-l5JjcLvdfPv86BPf_1R2_8h8S7EIr</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2283282870</pqid></control><display><type>article</type><title>Pivot Tracing: Dynamic Causal Monitoring for Distributed Systems</title><source>ACM Digital Library</source><source>EBSCOhost Business Source Complete</source><creator>Mace, Jonathan ; Roelke, Ryan ; Fonseca, Rodrigo</creator><creatorcontrib>Mace, Jonathan ; Roelke, Ryan ; Fonseca, Rodrigo</creatorcontrib><description>Monitoring and troubleshooting distributed systems is notoriously difficult; potential problems are complex, varied, and unpredictable. The monitoring and diagnosis tools commonly used today—logs, counters, and metrics—have two important limitations: what gets recorded is defined a priori , and the information is recorded in a component- or machine-centric way, making it extremely hard to correlate events that cross these boundaries. This article presents Pivot Tracing, a monitoring framework for distributed systems that addresses both limitations by combining dynamic instrumentation with a novel relational operator: the happened-before join. Pivot Tracing gives users, at runtime, the ability to define arbitrary metrics at one point of the system, while being able to select, filter, and group by events meaningful at other parts of the system, even when crossing component or machine boundaries. We have implemented a prototype of Pivot Tracing for Java-based systems and evaluate it on a heterogeneous Hadoop cluster comprising HDFS, HBase, MapReduce, and YARN. We show that Pivot Tracing can effectively identify a diverse range of root causes such as software bugs, misconfiguration, and limping hardware. We show that Pivot Tracing is dynamic, extensible, and enables cross-tier analysis between inter-operating applications, with low execution overhead.</description><identifier>ISSN: 0734-2071</identifier><identifier>EISSN: 1557-7333</identifier><identifier>DOI: 10.1145/3208104</identifier><language>eng</language><publisher>New York: Association for Computing Machinery</publisher><subject>Boundaries ; Computer networks ; Monitoring ; Systems analysis ; Troubleshooting</subject><ispartof>ACM transactions on computer systems, 2018-12, Vol.35 (4), p.1-28</ispartof><rights>Copyright Association for Computing Machinery Dec 2018</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c215t-a1d333b232152a378ca81e193cd71a65f25b82ba7b031cf51ff45d38049f7cec3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Mace, Jonathan</creatorcontrib><creatorcontrib>Roelke, Ryan</creatorcontrib><creatorcontrib>Fonseca, Rodrigo</creatorcontrib><title>Pivot Tracing: Dynamic Causal Monitoring for Distributed Systems</title><title>ACM transactions on computer systems</title><description>Monitoring and troubleshooting distributed systems is notoriously difficult; potential problems are complex, varied, and unpredictable. The monitoring and diagnosis tools commonly used today—logs, counters, and metrics—have two important limitations: what gets recorded is defined a priori , and the information is recorded in a component- or machine-centric way, making it extremely hard to correlate events that cross these boundaries. This article presents Pivot Tracing, a monitoring framework for distributed systems that addresses both limitations by combining dynamic instrumentation with a novel relational operator: the happened-before join. Pivot Tracing gives users, at runtime, the ability to define arbitrary metrics at one point of the system, while being able to select, filter, and group by events meaningful at other parts of the system, even when crossing component or machine boundaries. We have implemented a prototype of Pivot Tracing for Java-based systems and evaluate it on a heterogeneous Hadoop cluster comprising HDFS, HBase, MapReduce, and YARN. We show that Pivot Tracing can effectively identify a diverse range of root causes such as software bugs, misconfiguration, and limping hardware. We show that Pivot Tracing is dynamic, extensible, and enables cross-tier analysis between inter-operating applications, with low execution overhead.</description><subject>Boundaries</subject><subject>Computer networks</subject><subject>Monitoring</subject><subject>Systems analysis</subject><subject>Troubleshooting</subject><issn>0734-2071</issn><issn>1557-7333</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2018</creationdate><recordtype>article</recordtype><recordid>eNotT0tLAzEYDKLgWot_QfDgKfo9EpMepfiCgj2055DNJrJFuzXZCv57I-1pmGEejBBXCHeISt8zgUVQJ6JBrY00zHwqGjCsJIHBc3FRygYAqk6NmC77n2G8XmUf-u3HpThL_rPE6REnYv38tJq_ysX7y9v8cSEDoR6lx66mW-LKyLOxwVuMOOPQGfQPOpFuLbXetMAYksaUlO7YgpolE2Lgibg59O7y8L2PZXSbYZ-3ddIRWSZL1kB13R5cIQ-l5JjcLvdfPv86BPf_1R2_8h8S7EIr</recordid><startdate>20181201</startdate><enddate>20181201</enddate><creator>Mace, Jonathan</creator><creator>Roelke, Ryan</creator><creator>Fonseca, Rodrigo</creator><general>Association for Computing Machinery</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20181201</creationdate><title>Pivot Tracing</title><author>Mace, Jonathan ; Roelke, Ryan ; Fonseca, Rodrigo</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c215t-a1d333b232152a378ca81e193cd71a65f25b82ba7b031cf51ff45d38049f7cec3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2018</creationdate><topic>Boundaries</topic><topic>Computer networks</topic><topic>Monitoring</topic><topic>Systems analysis</topic><topic>Troubleshooting</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Mace, Jonathan</creatorcontrib><creatorcontrib>Roelke, Ryan</creatorcontrib><creatorcontrib>Fonseca, Rodrigo</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM transactions on computer systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Mace, Jonathan</au><au>Roelke, Ryan</au><au>Fonseca, Rodrigo</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Pivot Tracing: Dynamic Causal Monitoring for Distributed Systems</atitle><jtitle>ACM transactions on computer systems</jtitle><date>2018-12-01</date><risdate>2018</risdate><volume>35</volume><issue>4</issue><spage>1</spage><epage>28</epage><pages>1-28</pages><issn>0734-2071</issn><eissn>1557-7333</eissn><abstract>Monitoring and troubleshooting distributed systems is notoriously difficult; potential problems are complex, varied, and unpredictable. The monitoring and diagnosis tools commonly used today—logs, counters, and metrics—have two important limitations: what gets recorded is defined a priori , and the information is recorded in a component- or machine-centric way, making it extremely hard to correlate events that cross these boundaries. This article presents Pivot Tracing, a monitoring framework for distributed systems that addresses both limitations by combining dynamic instrumentation with a novel relational operator: the happened-before join. Pivot Tracing gives users, at runtime, the ability to define arbitrary metrics at one point of the system, while being able to select, filter, and group by events meaningful at other parts of the system, even when crossing component or machine boundaries. We have implemented a prototype of Pivot Tracing for Java-based systems and evaluate it on a heterogeneous Hadoop cluster comprising HDFS, HBase, MapReduce, and YARN. We show that Pivot Tracing can effectively identify a diverse range of root causes such as software bugs, misconfiguration, and limping hardware. We show that Pivot Tracing is dynamic, extensible, and enables cross-tier analysis between inter-operating applications, with low execution overhead.</abstract><cop>New York</cop><pub>Association for Computing Machinery</pub><doi>10.1145/3208104</doi><tpages>28</tpages></addata></record>
fulltext fulltext
identifier ISSN: 0734-2071
ispartof ACM transactions on computer systems, 2018-12, Vol.35 (4), p.1-28
issn 0734-2071
1557-7333
language eng
recordid cdi_proquest_journals_2283282870
source ACM Digital Library; EBSCOhost Business Source Complete
subjects Boundaries
Computer networks
Monitoring
Systems analysis
Troubleshooting
title Pivot Tracing: Dynamic Causal Monitoring for Distributed Systems
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-03T19%3A41%3A50IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Pivot%20Tracing:%20Dynamic%20Causal%20Monitoring%20for%20Distributed%20Systems&rft.jtitle=ACM%20transactions%20on%20computer%20systems&rft.au=Mace,%20Jonathan&rft.date=2018-12-01&rft.volume=35&rft.issue=4&rft.spage=1&rft.epage=28&rft.pages=1-28&rft.issn=0734-2071&rft.eissn=1557-7333&rft_id=info:doi/10.1145/3208104&rft_dat=%3Cproquest_cross%3E2283282870%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2283282870&rft_id=info:pmid/&rfr_iscdi=true