# Canvas App Monitoring mit Bicep Dieses Setup beschreibt die Azure-Seite fuer das Monitoring einer Power Apps Canvas App. - Log Analytics Workspace - workspace-basiertes Application Insights - Action Group fuer Benachrichtigungen - drei Scheduled Query Alerts fuer Fehler, fehlgeschlagene Starts und Startlatenz ## Was Bicep abdeckt Die Monitoring-Ressourcen werden im ccbmv-Quellrepo bereitgestellt. Relevante Dateien dort: - `infra/canvas-app-monitoring.bicep` - `infra/canvas-app-monitoring.bicepparam` - `infra/canvas-app-monitoring.parameters.json` - `infra/canvas-app-monitoring-workbook.bicep` - `infra/canvas-app-monitoring-workbook.bicepparam` - `infra/canvas-app-monitoring-workbook.parameters.json` ## Was in Power Apps manuell aktiviert werden muss 1. Im Power Platform Admin Center `Canvas app insights` fuer den Tenant aktivieren. 2. Die Canvas App in Power Apps bearbeiten. 3. Im `App`-Objekt den `Application Insights connection string` hinterlegen. 4. App speichern und veroeffentlichen. 5. Optional unter `Settings > Updates > Experimental` aktivieren: `Pass errors to Azure Application Insights` 6. Optional ebenfalls aktivieren: `Enable Azure Application Insights correlation tracing` Ohne diese Power-Apps-Schritte gibt es zwar Azure-Ressourcen, aber keine oder nur sehr begrenzte Telemetrie. ## Deployment Beispiel mit Azure CLI (Stand April 2026): - Subscription: `Microsoft Partner Network` (`0334e359-d2b9-4a68-9fb2-c08a4f6d20fe`) - Resource Group: `rg001powerplatform` - Region: `switzerlandnorth` Hinweise: - Bei lokaler Ausfuehrung ggf. zuerst `az login`. - Aeltere Azure-CLI-Versionen verarbeiten `.bicepparam` nicht direkt. - In diesem Fall die JSON-Parameterdateien verwenden. ```bash az login az deployment group what-if \ --resource-group rg001powerplatform \ --template-file infra/canvas-app-monitoring.bicep \ --parameters @infra/canvas-app-monitoring.parameters.json az deployment group create \ --resource-group rg001powerplatform \ --template-file infra/canvas-app-monitoring.bicep \ --parameters @infra/canvas-app-monitoring.parameters.json ``` Workbook separat deployen: ```bash az deployment group what-if \ --resource-group rg001powerplatform \ --template-file infra/canvas-app-monitoring-workbook.bicep \ --parameters @infra/canvas-app-monitoring-workbook.parameters.json az deployment group create \ --resource-group rg001powerplatform \ --template-file infra/canvas-app-monitoring-workbook.bicep \ --parameters @infra/canvas-app-monitoring-workbook.parameters.json ``` ## Welche Signale das Setup ueberwacht - `Unhandled error` in der `traces`-Tabelle - fehlgeschlagene App-Starts aus `PowerAppsClient.PublishedApp.SessionLoadSummary` - p75 von `timeToAppInteractive` fuer optimale Sessions ## Empfehlung fuer fachliche Telemetrie Ergaenze in der Canvas App gezielte `Trace(...)`-Aufrufe fuer wichtige Benutzeraktionen und Fehlerpfade. Damit lassen sich in Application Insights neben Systemsignalen auch Geschaeftsereignisse auswerten. Beispiel: ```text Trace( "SaveEquipment", TraceSeverity.Information, { Screen: App.ActiveScreen.Name, RecordId: Text(varEquipmentId), UserEmail: User().Email } ) ``` ## Wichtige Grenzen - Mobile-Hintergrundereignisse werden laut Microsoft nicht vollstaendig erfasst. - Ohne `canvasAppId`-Parameter filtern die Alerts nicht auf eine einzelne App. - Correlation Tracing ist laut Microsoft aktuell eingeschraenkt und besonders fuer Custom Connectors relevant.