Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications
Distributed tracing allows tracking user requests that span across multiple services and machines in a distributed application. However, typical cloud applications rely on abstraction layers that can hide the root cause of latency happening between processes or in the kernel. Because of its focus on...
Guardado en:
Autores principales: | , , |
---|---|
Formato: | article |
Lenguaje: | EN |
Publicado: |
MDPI AG
2021
|
Materias: | |
Acceso en línea: | https://doaj.org/article/ea9abda5f00a425099c8b93d85ebe68d |
Etiquetas: |
Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
|
id |
oai:doaj.org-article:ea9abda5f00a425099c8b93d85ebe68d |
---|---|
record_format |
dspace |
spelling |
oai:doaj.org-article:ea9abda5f00a425099c8b93d85ebe68d2021-11-11T15:37:57ZCombining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications10.3390/electronics102126102079-9292https://doaj.org/article/ea9abda5f00a425099c8b93d85ebe68d2021-10-01T00:00:00Zhttps://www.mdpi.com/2079-9292/10/21/2610https://doaj.org/toc/2079-9292Distributed tracing allows tracking user requests that span across multiple services and machines in a distributed application. However, typical cloud applications rely on abstraction layers that can hide the root cause of latency happening between processes or in the kernel. Because of its focus on high-level events, existing methodologies in applying distributed tracing can be limited when trying to detect complex contentions and relate them back to the originating requests. Cross-level analyses that include kernel-level events are necessary to debug problems as prevalent as mutex or disk contention, however cross-level analysis and associating events in the kernel and distributed tracing data is complex and can add a lot of overhead. This paper describes a new solution for combining distributed tracing with low-level software tracing in order to find the latency root cause better. We explain how we achieve a hybrid trace collection to capture and synchronize both kernel and distributed request events. Then, we present our design and implementation for a critical path analysis. We show that our analysis describes precisely how each request spends its time and what stands in its critical path while limiting overhead.Loïc GelleNaser Ezzati-JivanMichel R. DagenaisMDPI AGarticleperformance evaluationsoftware analysismulti-level analysisexecution tracingcritical pathroot-cause analysisElectronicsTK7800-8360ENElectronics, Vol 10, Iss 2610, p 2610 (2021) |
institution |
DOAJ |
collection |
DOAJ |
language |
EN |
topic |
performance evaluation software analysis multi-level analysis execution tracing critical path root-cause analysis Electronics TK7800-8360 |
spellingShingle |
performance evaluation software analysis multi-level analysis execution tracing critical path root-cause analysis Electronics TK7800-8360 Loïc Gelle Naser Ezzati-Jivan Michel R. Dagenais Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications |
description |
Distributed tracing allows tracking user requests that span across multiple services and machines in a distributed application. However, typical cloud applications rely on abstraction layers that can hide the root cause of latency happening between processes or in the kernel. Because of its focus on high-level events, existing methodologies in applying distributed tracing can be limited when trying to detect complex contentions and relate them back to the originating requests. Cross-level analyses that include kernel-level events are necessary to debug problems as prevalent as mutex or disk contention, however cross-level analysis and associating events in the kernel and distributed tracing data is complex and can add a lot of overhead. This paper describes a new solution for combining distributed tracing with low-level software tracing in order to find the latency root cause better. We explain how we achieve a hybrid trace collection to capture and synchronize both kernel and distributed request events. Then, we present our design and implementation for a critical path analysis. We show that our analysis describes precisely how each request spends its time and what stands in its critical path while limiting overhead. |
format |
article |
author |
Loïc Gelle Naser Ezzati-Jivan Michel R. Dagenais |
author_facet |
Loïc Gelle Naser Ezzati-Jivan Michel R. Dagenais |
author_sort |
Loïc Gelle |
title |
Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications |
title_short |
Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications |
title_full |
Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications |
title_fullStr |
Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications |
title_full_unstemmed |
Combining Distributed and Kernel Tracing for Performance Analysis of Cloud Applications |
title_sort |
combining distributed and kernel tracing for performance analysis of cloud applications |
publisher |
MDPI AG |
publishDate |
2021 |
url |
https://doaj.org/article/ea9abda5f00a425099c8b93d85ebe68d |
work_keys_str_mv |
AT loicgelle combiningdistributedandkerneltracingforperformanceanalysisofcloudapplications AT naserezzatijivan combiningdistributedandkerneltracingforperformanceanalysisofcloudapplications AT michelrdagenais combiningdistributedandkerneltracingforperformanceanalysisofcloudapplications |
_version_ |
1718434834567659520 |