-[Übung 01: Instrumentieren von Microservices zum Zwecke des Tracings](#übung-01-instrumentieren-von-microservices-zum-zwecke-des-tracings)
-[Übung 02: Propagieren von Traces zwischen Microservices](#übung-02-propagieren-von-traces-zwischen-microservices)
## Vorbereitung
1.[Forken](https://git.mylab.th-luebeck.de/cloud-native/lab-tracing/-/forks/new) Sie sich bitte dieses [Repository](https://git.mylab.th-luebeck.de/cloud-native/lab-tracing).
2. Erstellen Sie anschließend in Gitlab unter `Einstellungen -> Repository -> Bereitstellungstoken` für das in Schritt 1 geforkte Repository einen **Bereitstellungstoken**, um selbstgebaute Container Images deployen zu können.
-**Name:**`Registry read access (deployment)`
-**Username:**`image-registry` (bitte exakt so!)
-**Scope:**`read-registry` (nicht mit *read repository* verwechseln!)
- Klicken Sie anschließend auf `Bereitstellungstoken erstellen` und kopieren Sie sich dieses geheime Token in die Zwischenablage!
3. Hinterlegen Sie nun für Gitlab Build-Pipelines dieses geheime Token unter `Einstellungen -> CI/CD -> Variables` als CI/CD-Variable.
- Klicken Sie auf `ADD Variable`
-**Key:**`REGISTRY_READ_TOKEN` (exakt so)
-**Value:** Fügen Sie hier das geheime Token (Schritt 2) aus der Zwischenablage ein.
-**Type:**`Variable` (nichts anderes)
-**Flags:** Selektieren Sie `Mask Variable` damit das geheime Token in Log-Dateien maskiert wird.
4. Setzen Sie bitte analog zu Schritt 3 die `KUBECONFIG` Variable in `Einstellungen -> CI/CD -> Variables` auf den Inhalt der Kubeconfig-Datei, die Sie für dieses Modul als Access Credential für den bereitgestellten Kubernetes Cluster erhalten haben (Type: `File`). Hierdurch erhält die Build Pipeline für das Deployment Zugriff auf den Cluster.
5. Installieren Sie **[Python 3](https://www.python.org/downloads)** (falls noch nicht geschehen).
6. Installieren Sie einen HTTP Load Generator wie bspw. **[salvo](https://github.com/tarekziade/salvo)** mittels `pip install salvo` oder `python3 -m install salvo` (je nachdem wie Ihre Python-Umgebung aufgesetzt ist). *Sie können mit anderen HTTP Load Generatoren arbeiten. Diese Anleitung basiert jedoch auf `salvo`.*
## Übung 01: Instrumentieren von Microservices zum Zwecke des Tracings
to be done
## Übung 02: Propagieren von Traces zwischen Microservices