Skip to main content
All of the catalog
Scenario

Observability & SRE

labctl stands up the three signals (Loki for logs, Tempo behind an Alloy collector for traces, Prometheus rules and SLO dashboards for metrics) and then leaves the wiring to you. Export go-api's spans through the collector, drive real load with k6, follow one request from a log line to its trace, and take an SRE alert from inactive to firing by breaking readiness on purpose.

ObservabilityVerifiedk3dkind
Definition on GitHub

What you'll do

  • Wire go-api to the collector and prove spans reach Tempo - the app exports OTLP to Alloy and never learns which backend is behind it
  • Drive real load with k6 and confirm the app's own request metrics move with it
  • Correlate the three signals: find a log line's trace_id in Loki and open that trace in Tempo
  • Break readiness under load and drive an SRE alert from inactive to firing

Stages

  1. 1log-aggregation

    Ship and store application logs

    lokipromtail
  2. 2tracing

    Trace collector (Alloy) and trace backend (Tempo)

    tempoalloyreset-tracing-wiring
  3. 3alerting-and-slo

    Alert rules and SLO dashboards

    alerting-rulesslo-dashboards

Prerequisites

--deploy-prereqs installs these into the lab for you. They are listed so you know what the scenario depends on.

ingressmonitoring/metricsmonitoring/grafanago-api

Get updates

New scenarios and faults, release notes, and news about hosted labs if and when there is some. A few emails a month at most.

We'll email you about new releases, new lab content and paid offerings such as hosted labs, courses and workshops. Unsubscribe any time.