Skip to content

Observability architecture

Decision

Adopt a standalone, subscription-scope Azure observability package as the tenant operations control plane. The package is owned by Platform Engineering and deployed independently from workload Bicep. It uses a cost-first hierarchy: native metadata and standard metrics first, selected data collection second, and preview or hybrid features only after a defined activation decision.

Scope

The package observes Azure resources and supported workloads. It does not own application business logic, model deployment, user data, or workload lifecycle. It creates only its own monitoring, alerting, governance, and FinOps resources.

Capability model

PlaneRequired capabilityAzure implementationDefault state
FinOpsBudget, actual and forecast notifications, anomaly investigation, scheduled reports, allocationCost Management budgets, scheduled actions, exports, Advisor, tag viewsBudget on; reports and exports opt-in
InventoryResource type, location, owner, project, lifecycle, expiry, and unmanaged itemsAzure Resource Graph query library and dashboard panelsOn
GovernanceRequired tags and lifecycle metadataParameterized Policy assignments and tag queriesAudit-first, enforcement by approval
Control planeDeployments, deletes, policy changes, and failed operationsActivity Log, selected Activity Log alerts, optional diagnostic exportActivity Log alerts opt-in
Azure healthService incidents, maintenance, advisories, and resource transitionsService Health and Resource Health Activity Log alert definitionsOpt-in, narrow scopes
Workload metricsAvailability, requests, errors, throttling, latency, token and image useAzure Monitor metric alerts and dashboardsOpt-in per supported metric
DiagnosticsRoot-cause logs, traces, and application telemetrySelected diagnostic settings, Log Analytics, Application Insights, scheduled query alertsOff until approved
ExperienceCost, inventory, health, and workload visualizationsAzure Monitor dashboards with Grafana plus portal Cost ManagementDashboard shell on; definition opt-in preview
ResponseNotification, routing, suppression, ownership, and runbooksAction groups and alert processing rulesNotification path on; routing opt-in
HybridAzure Local, Arc Kubernetes, and Foundry Local visibilityAzure Monitor Workspace, later DCRs and managed PrometheusNo collection by default
Health rollupBusiness dependency and service health stateAzure Monitor health modelsPreview pilot only

Architecture boundary

text
Platform observability package
  creates: monitoring resource group, workspaces, action group, budget,
           alert rules, policy assignments, dashboards, optional data controls

Workload deployment
  creates: application, Foundry account, model deployments, networking, data

Private overlay
  supplies: recipients, scopes, resource IDs, budget values, thresholds,
            retention, approved logs, destinations, and profile switches

The diagram is intentionally a textual boundary map. A deployment topology drawing will be added as draw.io when a concrete multi-subscription landing-zone topology is approved.

Data and cost flow

  1. Cost Management and Resource Graph answer cost and inventory questions without enabling workload log ingestion.
  2. Azure platform metrics provide workload behavior evidence without exporting diagnostic logs to Log Analytics.
  3. Activity Log provides control-plane evidence for the default retention period.
  4. Action groups receive budget and approved Azure Monitor alerts.
  5. Only an approved diagnostic, tracing, synthetic test, or Prometheus definition writes data to a workspace. Every such definition has an owner, retention, daily volume estimate, cost envelope, and review date.

CAF and tag contract

The package derives resource names from the CAF pattern <type>-<workload>-<environment>-<region>-<instance>. Its required tags are Owner, Project, Environment, CostCenter, ManagedBy, Lifecycle, and ExpiresOn for temporary or sandbox resources. Policy assignments are parameterized so the consumer selects approved built-in or custom policy definitions, scope, exclusions, enforcement mode, and remediation identity.

WAF decisions

PillarDesign response
Cost OptimizationBudgets and low thresholds are foundational; Log Analytics caps, short initial retention, selected categories, and opt-in Prometheus and tracing prevent telemetry spend by default.
Operational ExcellenceSeparate deployment, source-controlled alerts and dashboards, runbooks, lifecycle tags, query library, and response ownership make operation repeatable.
ReliabilityService and Resource Health, deployment-failure alerts, metric alerts, action groups, alert suppression, and health-model pilot provide layered failure evidence.
SecurityPrivate recipients and destinations remain in private overlays; diagnostics and tracing require data classification, least-privilege access, retention, and local-auth decisions.
Performance EfficiencyStandard platform metrics precede detailed logs. Metric dimensions and alert windows are selected per workload rather than treated as universal defaults.

Profiles and activation gates

ProfileIncludedGate before activation
FoundationResource group, Log Analytics workspace, Azure Monitor Workspace, action group, budget, tags, dashboard shell, query libraryPrivate parameter file and approved what-if
Solution coreFoundation plus Cost Management actions, Activity Log and health alerts, metric alerts, alert processing, dashboard definitionReviewed scopes, thresholds, alert owner, and runbook
Solution diagnosticsSelected diagnostic settings, Application Insights, availability tests, and scheduled query alertsData classification, source-category decision, RBAC, retention, sampling, daily estimate, and cost owner
Hybrid extensionDCR definitions and managed Prometheus readinessAzure Local or Arc workload, scrape-volume and label-cardinality estimate, privacy review

Hybrid and local design

Azure Local standard metrics and Foundry Local metadata can participate in the same inventory, tag, cost, and response model. The package creates an Azure Monitor Workspace but does not create a data collection rule, Arc extension, scrape target, or diagnostic stream by default. Foundry Local remains local-first: Azure-connected telemetry is metadata-only and opt-in, with no prompt, response, secret, or model-input collection by default.

Sources

Copyright © Hybrid Cloud Solutions LLC — Kristopher Turner