Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
RailsConf 2019 - Troubleshoot Your RoR Microservices with Distributed Tracing by Yoshinori Kawasaki _______________________________________________________________________________________________ Cloud 66 - Pain Free Rails Deployments Cloud 66 for Rails acts like your in-house DevOps team to build, deploy and maintain your Rails applications on any cloud or server. Get $100 Cloud 66 Free Credits with the code: RailsConf-19 ($100 Cloud 66 Free Credits, for the new user only, valid till 31st December 2019) Link to the website: https://cloud66.com/rails?utm_source=-&utm_medium=-&utm_campaign=RailsConf19 Link to sign up: https://app.cloud66.com/users/sign_in?utm_source=-&utm_medium=-&utm_campaign=RailsConf19 _______________________________________________________________________________________________ In microservices architecture, it is often challenging to understand interaction and dependencies between individual components involved in an end-user request. Distributed tracing is a technique to improve observability of such microservices behaviors and to help understand performance bottlenecks, to investigate cascaded failures, or in general, to troubleshoot. In this talk, I will show how we’ve implemented distributed tracing in Rails apps using OpenCensus, a set of vendor-neutral libraries to collect and export metrics and traces, and real world examples from our system that consists of about 100 microservices built with Ruby, Go, Python, Node and Rust. I will also discuss other methodologies to improve “observability” of Rails apps in microservices and future direction. If you feel pain in troubleshooting microservices of Rails, you’ll love distributed tracing.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
The video, titled "Troubleshoot Your RoR Microservices with Distributed Tracing", features Yoshinori Kawasaki at RailsConf 2019, where he discusses the challenges faced in microservices architecture, particularly in troubleshooting and understanding the interactions between various components of an application. Kawasaki guides the audience through the necessity of distributed tracing as a solution for these issues, elaborating on how it enhances observability in systems. ### Key Points Discussed: - **Introduction to Microservices**: - Many developers find themselves transitioning from monolithic applications to microservices due to growth. - This evolution increases the complexity of systems, making troubleshooting difficult. - **Challenges of Microservices**: - Understanding dependencies and interactions in a distributed architecture is cumbersome. - Manual efforts to map service dependencies can be impractical and time-consuming. For instance, trying to understand the entire flow of an end-user request across multiple services is challenging. - **Distributed Tracing Explained**: - A technique that captures causal relationships and the sequence of operations involved in a single request, allowing developers to trace issues more effectively. - Visual tools, such as DataDog and Stackdriver, can illustrate the interactions between services, revealing points of latency or failures. - **OpenCensus Framework**: - Introduced as a vendor-neutral library for implementing distributed tracing in applications. - Supports multiple programming languages and can send data to various backends, thus providing flexibility in data analysis. - The video details how to integrate OpenCensus with Rails applications and describes middleware structures that allow for efficient tracing. - **Implementation of OpenCensus**: - Explains how middleware can extract trace context from incoming requests and propagate it through service calls, ensuring complete visibility of requests across services. - Example code snippets are presented to illustrate how to create spans for different operations within the application. - **Future of OpenCensus and OpenTracing**: - Discusses the merging of OpenCensus with OpenTracing, emphasizing continued developments in tracing technologies. ### Conclusion and Takeaways: - Distributed tracing presents a powerful solution to the complexities that arise in microservices environments, enabling better understanding, performance diagnosis, and faster troubleshooting of applications. - The simplicity of adopting distributed tracing with frameworks like OpenCensus allows developers to gain deep insights into their applications and ultimately improve system reliability. - Overall, developers are encouraged to implement distributed tracing techniques to alleviate the pain of microservices troubleshooting.
Suggest modifications
Cancel