Telemetrieereignisse für die Synchronisierung mobiler Apps und Aktionen
Power Apps-Daten mobiler Anwendungen im Zusammenhang mit Offline-Synchronisierungsereignissen sind für modellgesteuerte und Canvas-Apps verfügbar. Diese Daten können verwendet werden, um den Zustand und die Leistung von Offlinesynchronisierungsereignissen für Ihre Organisation zu bewerten.
Diese Daten werden in die Tabelle Power Apps>Mobile App-Synchronisierung und -Aktionen in Application Insights eingefügt. Ein Eintrag wird protokolliert, wenn ein Benutzer auf eine Power Apps Mobile-App zugreift, die für den Offlinemodus konfiguriert ist. Weitere Daten zu Fehlerereignissen in modellgesteuerten Apps sind über die Power Apps>UCI verfügbar.
Synchronisierung mobiler Apps und Definitionen von Aktionsereignissen
- id: Ereignis-ID.
- target: Name des Szenarios, das durch das Ereignis nachverfolgt wird.
- type: Quelltabelle des Ereignisses.
- name: Name des Szenarios, das durch das Ereignis nachverfolgt wird.
- duration: Dauer des Szenarios in Millisekunden. Die Dauer kann lange Zeiträume umfassen, in denen die App inaktiv ist.
- operation_Id: Eindeutiger Bezeichner für die Sitzung.
- operation_ParentId: Eindeutiger Bezeichner für das Szenario, das durch das Ereignis nachverfolgt wird.
- user_Id: Microsoft Entra-Benutzer-ID.
- application_Version: Version der App.
- customDimensions: Enthält die folgenden Attribute:
- „EventName“: Zusammenfassung des Szenarios, das durch das Ereignis nachverfolgt wird (ScenarioEnd).
- „ScenarioResult“: ERFOLG oder FEHLER.
- ErrorCode: Fehlercode, der bei einem Synchronisierungsfehler generiert wird. Weitere Informationen finden Sie in der Fehlercode-Zuordnungstabelle.
- ErrorMessage: Leer bei Erfolg oder Zeichenfolge, die den Fehler beschreibt.
- FailureType: Definiert die Art des Synchronisierungsfehlers.
- LogLevel: Der Schweregrad oder die Berichtsebene des Ereignisses. Gültige Werte sind info, error, warning, error oder verbose.
- DataSyncMode: Welche Art von Offlinesynchronisierung der Benutzer erlebt hat.
- DELTA_SYNC: Automatische inkrementelle Synchronisierung.
- GRID_SYNC: Ausgelöst durch eine Aktualisierung einer Rasteransicht.
- FIRST_SYNC: Erste Synchronisierung auf einem Gerät (oder nach einer Abmeldung/Neukonfiguration)
- FORCED_SYNC: Wird über die Schaltfläche auf der Seite „Gerätestatus“ ausgelöst.
- SINGLE_RECORD_SYNC: Ausgelöst von Pushbenachrichtigung.
- AppFlavor: Native App, die auf den Geräten installiert ist. Gültige Werte sind „FieldService“ und PowerApps.
- AppInfo_Version: Version der nativen App, wie sie im App Store zu finden ist
- ActiveDuration: Dauer des Szenarios in Millisekunden, enthält nur der Zeit, in der die App aktiv ist.
- DeviceInfo_Id: Eindeutiger Bezeichner des Geräts.
- DeviceInfo_model: Gerätemodell (z. B. iPhone 13).
- DeviceInfo_make: Gerätemarke (z. B. Apple).
- DeviceInfo_OsName: Betriebssystem des Geräts (z. B. Android Android).
- DeviceInfo_OsVersion: Betriebssystemversion (z. B Android 13).
- Loc_country: Ursprung des Telemetriegeräts.
- eventContext: Enthält die folgenden Eigenschaften:
- CurrentSyncId: ID eines erfolgreichen Synchronisierungsdurchlaufs. Wird nach jeder erfolgreichen Synchronisierung zurückgesetzt. (Wird nach einem Fehler nicht zurückgesetzt.)
- CurrentActivityId: ID des Synchronisierungsdurchlaufs. Nach jeder Synchronisierung zurücksetzen.
- entityName: Name der Tabelle in Daten-Download-Ereignissen.
- ProfileId: ID des Offlineprofils, das für die App und den Benutzenden konfiguriert ist.
- RecordCount: Anzahl der heruntergeladenen Datensätze.
- ResponseSize: Größe der eingehenden Payload-Daten, wie von HTTPClient gemeldet (komprimierte Größe).
- ContentLength: Größe der eingehenden Payload-Daten, wie von HTTPClient gemeldet (komprimierte Größe).
Fehlerereignisse von Unified Client Interface
- timestamp [UTC]: Zeitpunkt des Ereignisses.
- problemId: „uci_trace“ oder „uciMonitorFailure“ (woher die Daten stammen).
- type: „uci_trace“ oder „uciMonitorFailure“ (Woher die Daten stammen.)
- outType: „uci_trace“ oder „uciMonitorFailure“ (Woher die Daten stammen).
- outerMessage: Fehlermeldung.
- itemType: „exception“
- CustomDimensions:
- eventContext: Weitere Details zum Fehler.
- ServerConnectivityState: Befindet sich der Benutzende im Offlinemodus? (Offline/Online)
- NetworkConnectivityState: Verfügt der Benutzer über eine Internetverbindung? Beachten Sie, dass sich ein Benutzender im Offlinemodus befinden kann, obwohl er über eine Internetverbindung verfügt.
- IsOfflineByDefaultApp: Wenn „false“ bedeutet dies, dass die Funktion Im Offlinemodus arbeiten aktiviert ist. Wenn „true“ bedeutet dies, dass Offline zuerst aktiviert ist.
- callStack: Der Programmiercode, in dem der Fehler aufgetreten ist.
- hostSubType: „PowerApps-Player-iOS-fieldservice“
- hostType: „MobileApplication“
- Operation_ID: Eine Zeichenfolgenverkettung aus sessionID, gefolgt von einem „_“ und einer externen Korrelations-ID, z. B. e11e8465-bc8f-4319-b64a-9c1e42453148_0da90a33-ad68-4a4e-bd45-5728d5da719a.
- Operation_ParentID: Aktivitäts-ID im Zusammenhang mit dem Fehler.
- SessionId: Sitzungs-ID des Fehlers.
- UserId: Dynamics 365-Benutzer-ID.
- User_authenticatedID: Dynamics 365-Benutzer-ID.
- Application_version: App-Version, z. B. 9.2.24045.00212.
- Client_Type: Version des Betriebssystems, wie zum Beispiel iOS oder Android.
Beispiel-Szenarien
Offlinesynchronisierungsfehler nach Fehlercode
Anhand dieser Abfrage können Sie sehen, welche Arten von Fehlern bei Mitarbeitenden in Service und Produktion auftreten, wenn eine Synchronisierung fehlschlägt. Einige Fehler sind erwartet, z. B. wenn die mobile Anwendung während der Synchronisierung geschlossen wird oder wenn die Netzwerkverbindung während der Synchronisierung getrennt wird und die Synchronisierung nicht abgeschlossen werden kann. Die Definition der Fehlercodes wird in der Fehlercodezuordnungstabelle angezeigt.
dependencies
| where name == "Offline.SyncDatabase"
| where success == false
| extend cd = parse_json(customDimensions)
| extend AppVersion = tostring(cd.AppInfo_Version)
| extend ErrorCode = tostring(cd.ErrorCode)
| extend ErrorMessage = tostring(cd.ErrorMessage)
| extend FailureType = tostring(cd.FailureType)
| summarize dcount(user_Id), count() by ErrorCode, ErrorMessage, FailureType, bin(timestamp, 1d)
Durchschnittliche Anzahl synchronisierter Datensätze pro Tabelle
Mit dieser Abfrage können Sie auswerten, welche Tabellen die meisten Datensätze zu einer Synchronisierung beitragen. Anhand dieser Daten können Sie versuchen, Ihr Offlineprofil weiter zu optimieren, um Datensätze oder Daten in jeder Tabelle zu reduzieren.
dependencies
| where name endswith_cs "Offline.DdsClient.GetRecords"
| extend cd = parse_json(customDimensions)
| extend ec = parse_json(tostring(cd.eventContext))
| extend RecordCount = toint(ec.RecordCount)
| extend EntityName = tostring(ec.EntityName)
| extend syncid = tostring(ec.CurrentSyncId)
| extend DataSyncMode = tostring(cd.DataSyncMode)
//| where DataSyncMode == "FIRST_SYNC" //This is used to pivot on the type of sync being executed.
| summarize sum(RecordCount) by syncid, EntityName, DataSyncMode, user_Id
| summarize percentile(sum_RecordCount, 50), arg_max(sum_RecordCount, user_Id), count() by EntityName, DataSyncMode
Durchschnittliche Synchronisierungsdauer nach Synchronisierungsmodus
Mit dieser Abfrage können Sie die durchschnittliche Synchronisierungsdauer für Benutzer in Ihrer Organisation auswerten.
dependencies
| where name == "Offline.SyncDatabase"
| extend cd = parse_json(customDimensions)
| extend ActiveDuration = toint(tostring(cd.ActiveDuration))
| extend WithBackgroundTime = duration
| extend DataSyncMode = tostring(cd.DataSyncMode)
| summarize percentile(ActiveDuration, 50), percentile(WithBackgroundTime, 50) by client_Type, DataSyncMode
Synchronisierungsdetails nach Benutzendem
Diese Abfrage bietet eine benutzerspezifische Ansicht der Synchronisierung, einschließlich des letzten Synchronisierungsdatums, des letzten Fehlers, der Synchronisierungsdauer und der synchronisierten Datensätze.
dependencies
| where name == "Offline.SyncDatabase"
| extend cd = parse_json(customDimensions)
| extend ActiveDuration = toint(tostring(cd.ActiveDuration))
| extend WithBackgroundTime = duration
| extend DataSyncMode = tostring(cd.DataSyncMode)
| extend ErrorMessage = tostring(cd.ErrorMessage)
| summarize percentile(ActiveDuration, 50), percentile(WithBackgroundTime, 50), arg_max(timestamp, ErrorMessage), countif(success == false) by user_Id, DataSyncMode
Benutzender nach Gerätetyp und App-Version
Diese Abfrage enthält weitere Informationen zu Benutzenden in Ihrer Organisation, die auf ihrem Gerätemodell auf die mobile Anwendung zugreifen.
dependencies
| where name == "Offline.SyncDatabase"
| extend cd = parse_json(customDimensions)
| extend AppVersion = tostring(cd.AppInfo_Version)
| summarize dcount(user_Id) by AppVersion, client_Type
Zuordnung von Fehlercodes
Fehlercode | Fehlertyp | Definition |
---|---|---|
-2146864604 | CONFIG_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2146864606 | CONFIG_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2146864607 | CONFIG_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2146864608 | CONFIG_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2146869250 | CONFIG_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147015328 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147088248 | CONFIG_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147155198 | FEHLER | Fehlercodes, die mit „–214“ beginnen, finden Sie unter Webdienst-Fehlercodes. |
-2147155198 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147167669 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147180269 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147180284 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147187375 | FEHLER | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147187388 | FEHLER | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147187389 | FEHLER | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147204270 | FEHLER | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147204339 | FEHLER | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147204784 | FEHLER | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147209463 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147217124 | FEHLER | Fehlercodes, die mit „–214“ beginnen, finden Sie unter Webdienst-Fehlercodes. |
-2147220884 | FEHLER | Fehlercodes, die mit „–214“ beginnen, finden Sie unter Webdienst-Fehlercodes. |
-2147220955 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147220956 | EXTERNAL_ERROR | Fehlercodes, die mit „–214“ beginnen, finden Sie unter Webdienst-Fehlercodes. |
-2147220960 | ACCESS_ERROR | Fehler bei der App- oder Benutzerkonfiguration. Siehe Webdienst-Fehlercodes. |
-2147220970 | FEHLER | Fehlercodes, die mit „–214“ beginnen, finden Sie unter Webdienst-Fehlercodes. |
-2147220989 | FEHLER | Fehlercodes, die mit „–214“ beginnen, finden Sie unter Webdienst-Fehlercodes. |
-50 | FEHLER | Interner Fehler. |
0 | FEHLER | Unbekannter Fehler. |
2000 | FEHLER | Nicht zugeordneter Fehler. |
2002 | FEHLER | Dataverse SQL-Timeout. |
2003 | DATABASE_ERROR | Datenbankfehler. |
2004 | NETWORK_ERROR | Netzwerkfehler. |
2005 | SERVER_ERROR | Serverfehler. |
2006 | AUTH_ERROR | Authentifizierungsfehler. |
2007 | DEVICE_ERROR | Fehler „Datenträger ist voll“. |
2008 | FEHLER | Interner Fehler. |
2009 | AUTH_ERROR | Authentifizierungsfehler. |
2011 | CONFIG_ERROR | Fehler bei den Berechtigungen des App-Moduls. |
2016 | CONFIG_ERROR | Offline-Konfigurationsfehler. |
2017 | CONFIG_ERROR | Konfigurationsfehler des Offlineprofils. |
3000 | EXPECTED_ERROR | Internes Synchronisierungsereignis. |
3003 | CONFIG_ERROR | Konfigurationsfehler des Offlineprofils. |