Stefan
|
e04d590c3a
|
Add OpenTelemetry, performance metrics, and broaden logging + tests
Observability:
- New FuchsTelemetry (ActivitySource + Meter) defining business counters
(invoices/reminders/reports rendered, emails/sms sent+failed, MT940 rows,
MFR calls) and duration histograms (PDF render, report render, email send).
- Program.cs wires OpenTelemetry tracing (ASP.NET Core, HttpClient, SqlClient,
app source) and metrics (ASP.NET Core, HttpClient, runtime, app meter).
OTLP export is enabled only when Fuchs:Telemetry:OtlpEndpoint is set, so a
missing collector never affects the app; disable via Fuchs:Telemetry:Enabled.
Instrumentation + logging:
- Services (Pdf, Invoice, Reminder, Report, Com, Banking, Widget, MfrFactory)
now emit spans, record metrics, and log entry/result/timing/errors.
- Added dispatch + key-action logging to the previously silent handlers
(Banking, Reminder, Reports, Requests).
Tests (137 total, +10):
- ProcessWebComServiceTests with a stub HttpMessageHandler cover success
(API 200), failure (API 500, invalid email, empty mobile), disabled mode,
the base64 attachment payload contract, and metric emission via MeterListener.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-05 14:02:13 +02:00 |
|