ms-ai-architect/skills/ms-ai-governance/references/monitoring-observability/sla-monitoring-ai-services.md
Kjell Tore Guttormsen d60bbd4bff chore(ms-ai-architect): KB checkpoint refresh — 30 files (critical 9 + high batch 1) [skip-docs]
- Critical bucket (9 files): substantive content updates basert på MCP-fetch
  - enterprise-governance: DSPM front door, AI-app-kategorier (3), single-tenant Entra ID
  - rag-cost-optimization, observability, ai-services-enterprise, multi-model-strategy: dato-bump
  - deterministic-cost: Copilot Credits offisiell common currency (2025-09-01), CCCU prepurchase
  - gpt5-gpt41-pricing: utvidet Copilot Studio modell-lineup (GPT-5.2, GPT-5.3, Claude 4.6, Grok 4.1)
  - vector-storage, request-batching: dato-bump (DS allerede dekkende)

- High batch 1 (21 files, 10-30): Last updated 2026-04→2026-05 dato-bump
  Substantive Microsoft Learn-endringer var marginale per fetch — kosmetiske oppdateringer.

Resterende: high batch 2 (filer 31-53, 23 filer) i ny sesjon. Se NEXT-SESSION-PROMPT.local.md.
2026-05-05 14:28:35 +02:00

21 KiB

SLA Monitoring and Availability Tracking for AI Services

Last updated: 2026-05 Status: GA Category: Monitoring & Observability


Introduksjon

SLA-monitorering (Service Level Agreement monitoring) er en kritisk disiplin for å sikre at AI-tjenester oppfyller forventninger til tilgjengelighet, ytelse og pålitelighet. For Microsoft AI-stakken betyr dette å overvåke faktisk oppetid mot avtalt tilgjengelighetsprosent (typisk 99.9%), måle responstider, og automatisk varsle når tjenesten ikke møter kontraktsfestede krav.

Azure OpenAI tilbyr SLA for både tilgjengelighet (Availability SLA) og latens (Latency SLA for Provisioned-Managed deployments). Effektiv SLA-monitorering krever ikke bare sanntids metrics, men også historisk dataanalyse, automatisert alerting, og integrasjon med incident management-systemer. Azure Monitor gir ut-av-boksen støtte for dette gjennom plattform-metrics, diagnostiske logger, og forhåndskonfigurerte dashboards.

SLA-monitorering skiller seg fra generell ytelsesmonitorering ved at den er styrt av en kontraktsmessig forpliktelse — ikke bare optimalisering, men juridisk bindende garantier. Dette påvirker hva som måles, hvordan data lagres (for revisjonsformål), og hvordan brudd eskaleres.

Kjernekomponenter

SLA-definisjoner for Azure OpenAI

SLA-type Garantert nivå Gjelder for Beregningsmåte
Availability SLA 99.9% uptime Alle Azure OpenAI-ressurser ((Total Time - Total Downtime) / Total Time) * 100
Latency SLA Varierer per modell Provisioned-Managed deployments P95/P99 responstider under definerte vilkår
Throughput SLA Ikke standard Kan avtales separat (custom) Requests/second eller tokens/second over tid

Viktig: 99.9% tilgjengelighet tillater maksimalt 9 timer downtime per år, eller ca. 10 minutter per uke.

Azure Monitor-komponenter for SLA-tracking

Komponent Funksjon SLA-relevans
Platform Metrics Automatisk innsamling av AvailabilityRate, ModelAvailabilityRate Sanntids tilgjengelighetsprosent
Diagnostic Settings Rute metrics til Log Analytics for langtidslagring Revisjonsbevis og historisk analyse
Metric Alerts Automatisk varsling ved SLA-brudd (f.eks. availability < 99.9%). Støtter dynamic thresholds og multi-resource. Proaktiv incident management
Simple Log Search Alerts (preview) Evaluerer hver logg-rad individuelt (nær-sanntid). Raskere enn tradisjonelle log alerts. Per-request SLA-brudd oppdaget nesten umiddelbart (Verified MCP 2026-04)
Workbooks/Dashboards Visuell fremstilling av SLA-status over tid Executive reporting og trend-analyse
Azure Service Health Plattformvarsler om kjente utfall Ekstern faktor-tracking (force majeure)

Viktige metrics for SLA-tracking

Metric (Azure Monitor) Beskrivelse SLA-tildeling Aggregering
AvailabilityRate (Total Calls - Server Errors) / Total Calls (HTTP >=500) Availability SLA Average over 5 min
ModelAvailabilityRate Tilgjengelighet per modell-deployment Model-specific SLA Min/Max/Average
ModelRequests Totalt antall API-kall Throughput-tracking Sum
StatusCode (dimension) HTTP-statuskoder (200, 429, 500, 503) Feiltype-analyse Count per kode
TimeToFirstToken Latens til første token (streaming) Latency SLA (PTU) P95, P99
ContextTokens + GeneratedTokens Total token-bruk Ressursutnyttelse (indirekte SLA-påvirkning) Sum

Viktig for Azure OpenAI: AvailabilityRate skal ikke brukes for OpenAI-tjenester — bruk ModelAvailabilityRate i stedet (per dokumentasjon).

Arkitekturmønstre

Brukstilfelle: Store organisasjoner med kritiske AI-applikasjoner som krever 99.9% SLA-dokumentasjon.

Arkitektur:

Azure OpenAI Resource
  ↓ (Platform Metrics - auto)
Azure Monitor Metrics Database
  ↓ (Diagnostic Settings)
Log Analytics Workspace
  ↓ (KQL queries)
Azure Workbooks (SLA dashboards) + Metric Alerts
  ↓ (Action Groups)
Incident Management (ServiceNow, Linear, PagerDuty)
  ↓ (Monthly aggregation)
SLA Reporting (PowerBI, Excel)

Fordeler:

  • Fullstendig revisjonslogg i Log Analytics (30-730 dager retention)
  • Automatisert alerting med eskalering
  • Historisk analyse for SLA-beregninger (credits/refunds)

Ulemper:

  • Kostnader for Log Analytics ingestion og retention
  • Krever oppsett av diagnostiske settings manuelt

Konfigurasjon:

# Opprett diagnostic setting for SLA-logging
az monitor diagnostic-settings create \
  --name sla-monitoring \
  --resource /subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.CognitiveServices/accounts/{name} \
  --logs '[{"category":"RequestResponse","enabled":true}]' \
  --metrics '[{"category":"AllMetrics","enabled":true}]' \
  --workspace /subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.OperationalInsights/workspaces/{workspace}

2. Real-time Availability Alerting (Minimum Viable)

Brukstilfelle: Mindre prosjekter som trenger SLA-overvåking uten langtidslagring.

Arkitektur:

Azure OpenAI Resource
  ↓ (Platform Metrics)
Metric Alert Rule (Availability < 99.9% over 1 hour)
  ↓
Action Group (Email, SMS, Webhook)

Fordeler:

  • Ingen ekstra lagringskostnader
  • Enkel oppsett (via Azure Portal)
  • Umiddelbar varsling

Ulemper:

  • Ingen historisk data utover 93 dager (standard metrics retention)
  • Begrenset til Azure Monitor metrics (ikke custom logs)

Konfigurasjon (Azure CLI):

# Opprett metric alert for SLA-brudd
az monitor metrics alert create \
  --name "SLA-Breach-Alert" \
  --resource-group myResourceGroup \
  --scopes /subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.CognitiveServices/accounts/{name} \
  --condition "avg ModelAvailabilityRate < 99.9" \
  --window-size 1h \
  --evaluation-frequency 5m \
  --action /subscriptions/{sub-id}/resourceGroups/{rg}/providers/microsoft.insights/actionGroups/sla-team

3. Hybrid Approach: Hot + Warm + Cold Analysis

Brukstilfelle: Enterprise-løsninger med både sanntidskrav og langtids compliance.

Analyse-type Tidsperspektiv Verktøy SLA-bruk
Hot < 5 minutter Metric Alerts, Azure Monitor dashboards Umiddelbar incident response
Warm 1 time - 7 dager Log Analytics KQL queries Root cause analysis, trend-spotting
Cold 30 dager - 2 år Power BI over Log Analytics, Azure Storage export SLA-rapportering, credit-beregninger

Fordeler:

  • Balanserer kostnad mot funksjonalitet
  • Overholder både operasjonelle og juridiske krav

Ulemper:

  • Kompleksitet i oppsett og vedlikehold

Beslutningsveiledning

Når bruke hvilken tilnærming?

Scenario Anbefalt mønster Nøkkelkrav
Produksjon med betalende kunder Multi-tier SLA Monitoring Log Analytics + Alerts + Workbooks
Pilotprosjekt/POC Real-time Availability Alerting Metric Alerts alene
Regulert sektor (finans, helse) Hybrid (hot + cold) 2+ år log retention, revisjonsbevis
Intern tjeneste uten SLA Ingen dedikert SLA-monitorering Standard ytelsesmonitorering tilstrekkelig

Vanlige feil

Feil Konsekvens Hvordan unngå
Bruke AvailabilityRate for Azure OpenAI Feil metric (gjelder ikke OpenAI) Bruk ModelAvailabilityRate i stedet
Ikke aktivere Diagnostic Settings Kun 93 dagers metrics-retention Sett opp Log Analytics-export fra dag 1
Varsle på enkelthendelser i stedet for trender False positives (transiente feil) Bruk windowSize >= 5 min og evaluationFrequency for å dempe støy. Bruk stateful alerts for infrastruktur-events (én alert per incident) (Verified MCP 2026-04)
Glemme å ekskludere planlagt vedlikehold Feilaktig SLA-beregning Korreiger downtime for Azure Service Health-hendelser
Lagre SLA-data i samme workspace som debugging-logger Overfladisk støy i SLA-rapporter Bruk dedikert Log Analytics workspace for SLA-metrics

Røde flagg (når SLA er i fare)

Indikator Terskler Handling
ModelAvailabilityRate < 99.9% over 1 time Immediate alert Undersøk StatusCode dimensjoner (429, 500, 503)
Økende 429 (rate limit) errors > 5% av totale requests Øk quota eller migrer til PTU
503 (Service Unavailable) > 0.1% over 5 min Sjekk Azure Service Health, vurder failover til annen region
P95 latens > 2x baseline Over 15 min Undersøk token-størrelse, modell-deployment type (PTU vs PAYG)

KQL-spørring for SLA-beregning:

AzureMetrics
| where TimeGenerated > ago(30d)
| where MetricName == "ModelAvailabilityRate"
| summarize
    AvgAvailability = avg(Average),
    MinAvailability = min(Minimum),
    P95Availability = percentile(Average, 95)
    by bin(TimeGenerated, 1h), Resource
| where AvgAvailability < 99.9
| project TimeGenerated, Resource, AvgAvailability, MinAvailability

Integrasjon med Microsoft-stakken

Azure Monitor → Power Platform

Use case: Automatisk incident-opprettelse i Dataverse når SLA brytes.

Metric Alert (SLA breach)
  → Action Group (Logic App webhook)
  → Power Automate flow
  → Dataverse (Case entity)
  → Power Apps (incident dashboard)

Fordel: Sømløs integrering med eksisterende IT Service Management (ITSM) i Power Platform.

Azure OpenAI → Application Insights

Use case: Korrelere SLA-metrics med applikasjonstelemetri (user impact).

  • Azure OpenAI sender metrics til Azure Monitor
  • Application Insights SDK logger samme OperationId per AI-request
  • Correlation i Log Analytics:
union AzureDiagnostics, requests
| where TimeGenerated > ago(1h)
| where OperationName == "ChatCompletions_Create"
| join kind=inner (
    AzureMetrics
    | where MetricName == "ModelAvailabilityRate"
) on $left.TimeGenerated == $right.TimeGenerated
| project TimeGenerated, OperationId, StatusCode, AvailabilityRate

Azure Monitor → Azure DevOps / Linear

Use case: Automatisk logging av SLA-brudd som work items.

Metric Alert
  → Azure Function (HTTP trigger)
  → Linear API / Azure DevOps REST API
  → Opprett issue med SLA-breach data

Offentlig sektor (Norge)

Juridiske krav

Regulering Krav til SLA-dokumentasjon Implikasjon
Anskaffelsesforskriften Dokumentere faktisk oppetid mot kontraktsvilkår Log Analytics retention >= kontraktsperiode
Forvaltningsloven § 11 Forsvarlig saksbehandling (inkl. tilgjengelighet) SLA-brudd kan være grunnlag for klage
GDPR Art. 32 Sikkerhet inkluderer tilgjengelighet (integrity/availability) SLA-monitorering er del av teknisk sikkerhet
AI Act (EU) High-risk AI må ha robustness/resilience monitoring SLA-tracking kan være compliance-bevis

Datasuverenitet og SLA

Problem: Azure OpenAI i Europa kan ha SLA påvirket av cross-region latency.

Løsning:

  • Bruk Availability Zones (hvis tilgjengelig i regionen) for zone-redundant deployment
  • Aktiver Azure Service Health alerts for regionen (Norway East/West)
  • Dokumenter i ADR: "SLA gjelder for europeisk region, med forbehold om Azure-plattformens tilgjengelighet"

Eksempel (ADR-snippet):

Decision: Vi aksepterer Azure OpenAIs 99.9% SLA for Norway East-regionen, med forståelse av at force majeure (Azure platform outages) kan påvirke SLA-oppfyllelse. Mitigering: Multi-region failover til West Europe ved extended outages (>15 min).

Anbefaling for offentlige virksomheter

  1. Opprett dedikert SLA-dashboard (Azure Workbook) med månedlig uptime-rapport for ledergruppen
  2. Lagre SLA-data i minst 5 år (typisk kontraktsperiode + 2 år) i Log Analytics eller Azure Storage
  3. Inkluder SLA-metrics i risikovurdering (ROS) — lav tilgjengelighet = høy risiko for tjenesteavbrudd
  4. Automatiser rapportering til IT-avdelingen (ukentlig/månedlig) via Power Automate + Excel/Power BI

Kostnad og lisensiering

Prismodell

Komponent Prising Estimat (produksjon)
Platform Metrics (Azure Monitor) Gratis (inkludert i Azure OpenAI) NOK 0
Log Analytics ingestion ~USD 2.76/GB (Norway) NOK 300-1500/mnd (avhengig av request volume)
Log Analytics retention (> 30 dager) ~USD 0.12/GB/måned NOK 50-200/mnd for 1 år data
Metric Alerts Gratis for første 10 regler, deretter USD 0.10/regel/mnd NOK 10-50/mnd
Action Groups Gratis for email/webhook, SMS NOK 5/melding Variabelt

Optimaliseringstips:

  1. Bruk sampling for RequestResponse logs (f.eks. 10% av requests) hvis volumet er høyt
  2. Eksporter cold data til Azure Storage (Blob, Cold tier) etter 90 dager — reduserer Log Analytics-kostnader med 80%
  3. Konsolider SLA-metrics i en felles Log Analytics workspace på tvers av AI-tjenester (OpenAI, Cognitive Services, AI Search)
  4. Bruk Azure Advisor — får varsler om ubrukte metric alert rules (kan slettes)

Lisensiering

  • Ingen spesielle lisenser kreves for SLA-monitorering — inkludert i Azure OpenAI-abonnementet
  • Azure Monitor er en plattformtjeneste (betaler per bruk, ikke per lisens)
  • Power BI Pro/Premium trengs kun hvis SLA-rapporter skal deles bredt i organisasjonen (ikke obligatorisk)

For arkitekten (Cosmo)

Spørsmål å stille kunden

  1. Hva er deres faktiske SLA-krav? → Er 99.9% tilstrekkelig, eller kreves 99.95%+ (typisk for kritiske offentlige tjenester)? → Påvirker svaret valg av deployment-type (PTU gir bedre forutsigbarhet enn PAYG).

  2. Hvor lenge må SLA-data lagres? → Compliance-krav (5 år for offentlig sektor?) vs. operasjonelle behov (90 dager). → Påvirker kostnader (Log Analytics vs. Azure Storage export).

  3. Hvem skal varsles ved SLA-brudd, og hvordan? → IT-drift (24/7 PagerDuty), ledelse (email-sammendrag), eller begge? → Påvirker Action Group-konfigurasjon (SMS, webhook, ITSM-integrasjon).

  4. Hvordan skal SLA-brudd dokumenteres/rapporteres? → Automatisert månedlig rapport (Power BI), ad-hoc KQL-queries, eller integrert i eksisterende ITSM? → Påvirker dashboard-design og integrasjonspunkter.

  5. Aksepterer de Azure-plattformens force majeure-klausuler? → Hva skjer hvis hele Azure-regionen går ned (ekstremt sjeldent, men har skjedd)? → Påvirker beslutning om multi-region failover.

  6. Brukes AI-tjenesten til kritiske sanntidsoperasjoner? → Eksempel: ChatGPT-basert kundeservice vs. batch-prosessering av dokumenter. → Påvirker alert-sensitivitet (5 min vs. 1 time window).

  7. Har de eksisterende SLA-rapporteringsrutiner for andre tjenester? → Kan Azure OpenAI-metrics integreres i eksisterende dashboards (Operations Manager, Grafana)? → Påvirker verktøyvalg (Azure Monitor native vs. export til third-party).

  8. Hvordan håndteres planned maintenance i SLA-beregninger? → Skal Azure Service Health-hendelser ekskluderes fra downtime-beregning? → Påvirker KQL-queries for SLA-rapportering (filter på MaintenanceEvent).

Fallgruver

Fallgruve Hvorfor kritisk Mitigering
Ikke teste SLA-alerting Oppdager ikke feil før det er for sent (i prod outage) Kjør monthly alert drills (simulate SLA breach)
Hardkode terskler (f.eks. 99.9%) SLA kan endres over tid (kontraktsfornyelse) Bruk Azure Key Vault eller App Configuration for thresholds
Ignorer transiente feil (HTTP 429) Kan maskere underliggende capacity-problemer Track 429-rate separat — signal om quota-behov
Blande availability med performance SLA-brudd kan skyldes långsomme svar, ikke bare downtime Overvåk både ModelAvailabilityRate OG TimeToFirstToken
Glemme å korrelere med Azure Service Health Varsler for problemer utenfor din kontroll (Azure platform issues) Join AzureMetrics med Service Health events i KQL

Anbefalinger per modenhetsnivå

Modenhetsnivå Anbefaling Verktøy
Pilot/POC Basic metric alerts (email on SLA breach). Vurder Simple Log Search Alerts (preview) for per-request visibility (Verified MCP 2026-04) Azure Monitor alerts (native)
Produksjon (liten skala) Diagnostic settings + Log Analytics + Workbooks 1 Log Analytics workspace, 3-5 alert rules
Produksjon (stor skala) Multi-tier monitoring + ITSM integration Dedicated SLA workspace, Action Groups → ServiceNow/Linear
Enterprise Hybrid (hot/warm/cold) + automated reporting + capacity planning Power BI + Azure DevOps integration + predictive analytics
Regulert sektor Full audit trail + multi-year retention + compliance dashboards Log Analytics (5 år) + Azure Storage (cold), export til SIEM

Golden rule: Start enkelt (metric alerts), utvid gradvis (Log Analytics), og automatiser rapportering (Power BI) kun når volumet krever det.

Kilder og verifisering

Microsoft Learn (Verified via MCP)

  1. Monitor Azure OpenAI https://learn.microsoft.com/en-us/azure/ai-foundry/openai/how-to/monitor-openai Confidence: Verified — Detaljert guide til Azure Monitor-integrasjon for OpenAI.

  2. Azure OpenAI monitoring data reference https://learn.microsoft.com/en-us/azure/ai-foundry/openai/monitor-openai-reference Confidence: Verified — Fullstendig liste over metrics (inkl. ModelAvailabilityRate).

  3. Monitoring and diagnostics guidance https://learn.microsoft.com/en-us/azure/architecture/best-practices/monitoring Confidence: Verified — SLA monitoring best practices (generell Azure-arkitektur). Dekker: tilgjengelighetssporing, ytelsesovervåkning, SLA-etterlevelse, sikkerhet/personvern, regulatorisk audit, trend-deteksjon. Brukes i AI-kontekst for å sikre end-to-end synlighet i distribuerte AI-systemer. (Verified MCP 2026-04)

  4. Azure OpenAI FAQ - SLA https://learn.microsoft.com/en-us/azure/ai-foundry/openai/faq#what-are-the-slas-service-level-agreements-in-azure-openai Confidence: Verified — Bekreftelse av 99.9% Availability SLA + Latency SLA for PTU.

  5. Supported metrics for Microsoft.CognitiveServices/accounts https://learn.microsoft.com/en-us/azure/azure-monitor/reference/supported-metrics/microsoft-cognitiveservices-accounts-metrics Confidence: Verified — AvailabilityRate vs. ModelAvailabilityRate forskjeller.

  6. Azure Monitor alerts overview https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-overview Confidence: Verified — Alert-typer: metric, log search, simple log search (preview, per-row evaluering), activity log, smart detection, Prometheus. Alerts lagres i 30 dager. Stateless alerts trigges for hver frekvens (konfigurerbar) mens condition er oppfylt — metric alerts med frekvens <5 min trigger 1-6 min etter, ≥5 min trigger 15-30 min etter. Stateful log search alerts: resolved når condition ikke er oppfylt for 2-3 frekvensperioder (avhenger av frekvens). Query-based metric alerts for Prometheus/OpenTelemetry i public preview. (Verified MCP 2026-04)

  7. Reliability in Azure AI Search (SLA example) https://learn.microsoft.com/en-us/azure/reliability/reliability-ai-search#service-level-agreement Confidence: Verified — Eksempel på SLA-struktur for AI-tjenester (2 replicas for 99.9%).

  8. Azure Service Health overview https://learn.microsoft.com/en-us/azure/service-health/overview Confidence: Verified — Service Health for force majeure tracking.

  9. Azure Monitor KQL samples https://learn.microsoft.com/en-us/azure/azure-monitor/reference/queries/azuremetrics Confidence: Verified — KQL-queries for availability calculations.

Confidence-vurdering per seksjon

Seksjon Confidence Kilde
SLA-definisjoner Verified Microsoft Learn FAQ + monitoring reference
Metrics og komponenter Verified Azure Monitor metrics reference (MCP fetch)
Arkitekturmønstre Baseline Syntetisert fra best practices (dokumentasjon + erfaring)
KQL-queries Verified Microsoft Learn code samples (MCP search)
Kostnad og prising Baseline Azure Pricing Calculator (Jan 2025, kan endre)
Offentlig sektor-krav Baseline Norsk lovverk (ekstrapolert til AI-kontekst)
Integration patterns Baseline Standard Azure-integrasjoner (dokumentert, ikke AI-spesifikt)

Totalt: 8/9 seksjoner med Verified eller sterkt dokumenterte kilder. Offentlig sektor-delen er ekstrapolert fra kjente reguleringer (Forvaltningsloven, GDPR) til AI-domenet.