OpenTelemetry + Rust + K6 Tutorial¶
Welcome to a comprehensive, production-ready tutorial demonstrating distributed observability with OpenTelemetry, Loki, Grafana, and Jaeger in Rust.
What You'll Learn¶
This tutorial guides you through building a complete observability stack for a Rust application:
- OpenTelemetry Instrumentation: Learn how to instrument Rust applications with distributed tracing
- Structured Logging: Implement structured JSON logging with Loki integration
- Metrics Collection: Capture application metrics with Prometheus
- Visualization: Create unified dashboards in Grafana
- Load Testing: Use K6 to simulate realistic user behavior and stress test your application
- Production Deployment: Deploy everything on Kubernetes with proper observability
Quick Navigation¶
- Quick Start - Get the application running in 5 minutes
- Architecture - Understand the system design
- Tech Stack - Deep dive into technologies used
- Onboarding Guide - Structured learning path with exercises
- K6 Load Testing - Master load testing and performance analysis
- API Documentation - Complete API reference
Key Features¶
✨ Production-Ready - Implements industry best practices for observability
🚀 Comprehensive - Covers tracing, logging, and metrics in one unified stack
📚 Educational - Structured learning path with real-world examples
🔧 Practical - All code examples are runnable and included in the project
Technology Stack¶
- Language: Rust with Actix-web framework
- Tracing: OpenTelemetry with Jaeger backend
- Logging: Loki for log aggregation
- Metrics: Prometheus for time-series data
- Visualization: Grafana dashboards
- Load Testing: K6 for realistic user simulation
- Infrastructure: Docker Compose for local development
Getting Started¶
To get started immediately, jump to the Quick Start guide. For a more structured approach, follow the Onboarding Guide.
All instructions include: - Command-by-command setup - Common troubleshooting tips - Real-world examples - Performance optimization techniques
Support¶
- Documentation: Full reference available in the Reference section
- Troubleshooting: Check the Troubleshooting Guide for common issues
- GitHub: Visit the repository for code and updates
Ready to dive in? Start with the Quick Start or explore the full guides.