Remote Workshop: Telemetry for Rust applications

Your Rust application has finally been deployed to production! Nice! But is it working? This workshop will introduce you to a comprehensive toolkit to detect, troubleshoot and resolve issues in your Rust applications.

This workshop is designed for developers who are operating Rust services in production-like environments, or are preparing to do so.

Tickets

Additional Information

Mainmatter Workshop: Telemetry for Rust Applications

Duration & location

The workshop takes place over two afternoons on Dec. 12th, and 13th., 14:00 to 18:00 CET each. That allows participants to use the mornings to exercise or keep up with work.

The workshop is run completely online and remote.

Number of participants

To ensure the highest quality, we accept up to 15 participants.

For who?

This workshop is intended for developers who have some experience with Rust already. The workshop is interactive: you will be working your way through a set of exercises using your computer, with the support of the workshop facilitator.

Prerequisites

We will send a detailed list of instructions for preparation, including the installation of tools, etc. Additionally, we will share a Github project with workshop materials. This information will be provided closer to the workshop date.

Workshop Contents

  1. Structured logging (tracing): An introduction to the tracing instrumentation library, covering both how to instrument your code (capturing fields, log levels, macros) and how to process the resulting telemetry data in your application (subscriber configuration, logging levels, log filtering).
  2. Error handling: We will cover Rust’s Error trait, with a focus on the information that can be retrieved and recorded in your logs; we will also spend some time on logging patterns (e.g. when should an error be logged?).
  3. Panic handling: You should always manage to capture details about what went wrong, even if it’s due to an uncaught panic rather than an error. We will review panic hooks and integrate them in our tracing setup.
  4. Metrics: Structured logs are important, but they don’t tell the full story. We will look at how to capture metric data using the metrics library, as a tool for designing alarms as well troubleshooting faulty behaviour.

Workshop facilitators

Luca Palmieri builds technology products for a living. His current focus is on backend development, software architecture and the Rust programming language. He is the author of "Zero to Production in Rust" and Mainmatter's Rust expert.

About Mainmatter

Mainmatter is a digital product agency that crafts products and mentors teams around the globe. We empower team to adopt Rust and fully realize its benefits in their web and backend projects.