You can't fix what you can't see
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 APIs.
You will be working through a series of test-driven exercises to learn Rust while building up your Rust observability toolkit!
This workshop is designed for people who have basic familiarity with Rust as a language and want to learn more about
Rust's observability story.
If you run into any issue with the assumed level of Rust knowledge, please ping us and we'll sort it together!
Note
This workshop has been written by Mainmatter.
It's one of the trainings in our portfolio of Rust workshops.
Check out our landing page if you're looking for Rust consulting or training!
- Rust (follow instructions here).
If Rust is already installed on your system, make sure you are running on the latest compiler version (cargo --version
).
If not, update usingrustup update
(or another appropriate command depending on how you installed Rust on your system). - (Optional) An IDE with Rust autocompletion support.
We recommend one of the following:
- RustRover;
- Visual Studio Code with the
rust-analyzer
extension.
git clone git@github.com:mainmatter/rust-telemetry-workshop.git
cd rust-telemetry-workshop
# Our `workshop-runner` CLI, you will need it to work through the exercises.
# You can run `wr --help` to check that everything is running properly
cargo install workshop-runner
# Work on your solution in a branch.
git checkout -b my-solution
# Get started!
wr
Follow the instructions shown in the terminal to get started with the first exercise.
Run this command from the top-level folder
wr
to verify your current solutions and move forward in the workshop.
Enjoy!
You can find the solutions to the exercises in the solutions
branch of this repository.
Throughout the workshop, the following resources might turn out to be useful:
- Rust Book
- Rust documentation (you can also open the documentation offline with
rustup doc
!) tracing
's documentationmetrics
' documentation
Copyright © 2023- Mainmatter GmbH (https://mainmatter.com), released under the Creative Commons Attribution-NonCommercial 4.0 International license.