Skip to content

Foundry observability parameter reference

Scope: Azure AI Foundry

This page describes the Azure AI Foundry target, the hosted-cloud target of ADR-0011. Foundry Local and Azure Local Foundry differ from it in models, features, identity, cost, and operations. Compare all three on Deployment targets.

Every input to infra/observability/main.bicep is explicit. Public examples are fictitious. Actual values belong only in an ignored private overlay.

Identity, naming, and foundation

ParametersPurpose
workload, environment, regionCode, instance, locationCAF-derived names and regional placement
ownerAlias, project, costCenter, lifecycle, expiresOn, managedByRequired ownership, allocation, and lifecycle tag values
operationsEmails, actionGroupShortName, actionGroupLocationPrivate notification routing
monthlyBudgetUsd, budgetName, budgetStartDate, budgetEndDate, actual and forecast threshold objectsSubscription budget and notification posture. An established deployment passes its existing budget name and period.
logAnalyticsSkuName, azureMonitorWorkspacePublicNetworkAccess, retention, daily quotaWorkspace cost and network safeguards
Dashboard shell and preview-definition inputsNative Azure Monitor Grafana resource and optional versioned JSON definition

Foundry core inputs

ParametersObject contract
enableActivityLogAlerts, activityLogAlertDefinitionsEach definition supplies name, description, enabled, scopes, and conditionAllOf for Foundry change, health, or deployment conditions
enableMetricAlerts, metricAlertDefinitionsEach definition supplies name and full metric-alert properties except actions; the package wires its action group
enableAlertProcessingRules, alertProcessingRuleDefinitionsEach definition supplies name, location, and full Microsoft.AlertsManagement/actionRules properties

Foundry diagnostics inputs

ParametersObject contract
enableFoundryDiagnosticSetting, foundryDiagnosticSettingExisting target subscription, resource group, Foundry account, diagnostic setting name, selected logs, metrics, optional destination type
enableApplicationInsights, applicationInsightsConfigurationName, kind, type, retention, sampling, local-auth setting, ingestion and query network-access settings
enableAvailabilityTests, availabilityTestDefinitionsSafe endpoint test name, kind, properties, optional tags; no headers or request data containing secrets
enableScheduledQueryAlerts, scheduledQueryAlertDefinitionsFull alert name, display fields, scope, frequency, window, criteria, severity, autoMitigate, and skipQueryValidation behavior

Feature switches do not fill missing objects or create defaults. A false switch keeps the module disabled; a true switch requires a complete, reviewed private definition.

Model-use profile inputs

The model-use profile has no public subscription or account values. A private overlay uses the dashboard-definition switches plus a source-controlled dashboard JSON file. It replaces the file's four target placeholders before supplying the serialized string. grafanaDashboardDefinitionName is always default, which Azure requires for native Azure Monitor dashboard definitions.

The initial private metric-alert definitions use only verified account metrics and explicit static thresholds:

SignalMetric and dimensionRecommended initial response
Availability degradationModelAvailabilityRate by model deploymentInvestigate Azure health and current deployment use
ThrottlingModelRequests with StatusCode 429Identify the deployment and request-rate change
Server failureModelRequests with StatusCode 5xxInvestigate Azure health, configuration change, and active alerts

No hardcoded metric thresholds, resource IDs, subscription IDs, locations, account names, or recipients are added to the reusable Bicep. The private parameter file owns all of them.