Operations
Observability
Achieved using Azure Monitor and Application Insights. Golden signals plus a small set of custom events.
This project uses Application Insights (Azure Monitor) for traces, metrics, and exceptions.
Observability is essential for investigating and preventing Production issues. To keep hosting costs down the Application Insights instance is part of the Shared Development Platform.
NOTE: Production ready observability has not yet been implemented for this project.
Golden signals
Latency
Server response time (P50 / P95) on the public API and the authenticated app shell.
Errors
Failed requests, dependency failures, and unhandled exceptions. Alert on burn rate, not a single 500.
Traffic
Request rate by operation. Use it to distinguish quiet from broken.
Saturation
CPU, memory, and queue depth on App Service (and SQL DTU / vCore where relevant).
Using Azure Monitor and Application Insights, the Golden Signals above are tracked through a combination of out-of-the-box telemetry tables, pre-aggregated platform metrics, and custom Kusto Query Language (KQL) queries. These can be surfaced via Azure Qorkbooks and Alert Rules to allow teams to respond to growing threats quickly.
Custom telemetry
Below are suggested events that can be traced. Actual events TBN:
Demo.SessionStartedPlan.Approved/ the domain equivalentAuth.Failedwith result code, never a secret