Kladde.ServiceDefaults ist das unscheinbarste Projekt der Kladde. Es hat keine Seite und keine Tabelle, und doch läuft sein Code in jedem
Prozess: in der Web-App, im Worker, im Abruf, in den Migrationen und seit Lektion 3.14.2 im TED-Stub. Seit K2 2.9.3 haben fünf Lektionen daran
geändert. Diese Lektion liest es als Ganzes, nimmt das Dashboard, das seine Telemetrie anzeigt, genauer unter die Lupe und schließt eine Lücke, die
seit K2 nur mit Disziplin geschlossen ist.
Was die Service Defaults heute tun
Die Vorlage aus K2 hat Extensions.cs mit vier Aufgaben angelegt. Jede hat die Kladde seitdem bewusst geändert:
| Aufgabe | in der Vorlage | in der Kladde | seit |
|---|---|---|---|
| OpenTelemetry | Logs, Metriken, Spuren von ASP.NET Core, HttpClient und Laufzeit; OTLP nur, wenn OTEL_EXPORTER_OTLP_ENDPOINT gesetzt ist |
dazu AddSource("Kladde.*") und AddMeter("Kladde.*"); ans Dashboard oder nach Application Insights über die Microsoft OpenTelemetry Distro (TelemetryExport) |
3.4.2, 3.4.3 |
| Health Checks | self mit dem Tag live; /health und /alive nur in Development |
/health/live und /health/ready in jeder Umgebung, ohne Anmeldung und ohne Messwert |
K2 2.9.3, 3.4.5 |
| Service Discovery | für jeden HttpClient |
unverändert | |
| Resilienz | AddStandardResilienceHandler() für jeden HttpClient |
gestrichen: Jeder Client entscheidet selbst, keiner wiederholt ein POST | K2 2.9.3, 3.9.2 |
Diese Tabelle gehört in die README von Kladde.ServiceDefaults. Die Vorlage ist Code, der Ihnen gehört, und wer eine neue Fassung der Vorlage
sieht, soll wissen, welche Abweichungen Absicht sind, bevor er sie „aktualisiert“.