Protokolle
Eine Einrichtungsvorlage mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin kopieren.
Anwendungsnachrichten verstehen
Abschnitt mit dem Titel “Anwendungsnachrichten verstehen”Die Logs-Seite bietet eine detaillierte Historie von Aktualisierungsereignissen und diagnostischen Informationen zu Ihrer Anwendung. Dies ist entscheidend für die Überwachung des Aktualisierungsprozesses, das Auflösen von Problemen und das Verständnis, wie Ihre Geräte mit Capgo interagieren. Sie können es über auf Ihre App klicken und dann auf die Schaltfläche “Logs” (früher “Aktualisierungen” in einigen älteren Screenshots oder Dokumentationen) klicken.
Von dort sollten Sie eine Seite sehen, die ähnlich aussieht, und die eine Liste von Protokollereignissen anzeigt:

Die Oberfläche der Logs-Seite umfasst:
- Protokolle Tab - Der Navigations-Tab, um den Protokolle-Ansicht zu erreichen
- Neuladen-Button - Aktualisiert die Protokoll-Liste mit den neuesten Daten
- Zeitraum & Aktionen-Filter - Filtert Protokolle nach Datum und Aktionstyp (siehe Abschnitte unten)
Jede Zeile zeigt:
- Timestamp (UTC)
- Geräte-ID
- Aktion code (was passiert ist)
- Version name (Bundle oder
builtin)
Klicken Sie auf eine Zeile, um zur Gerätedetailseite für die vollständige Historie zu springen.
Filtern nach Datumsbereich
Abschnitt mit dem Titel “Filtern nach Datumsbereich”Sie können die Protokolle nach einem bestimmten Zeitraum filtern, indem Sie den Datumsauswahl-Assistenten verwenden:

- Schnelle Vorlagen - Wählen Sie eine der häufig verwendeten Zeitbereiche: Letzte 1h, 3h, 6h oder 12h
- Startzeit - Legen Sie eine benutzerdefinierte Startzeit für den Bereich fest
- Endezeit - Wählen Sie eine benutzerdefinierte Endzeit für den Bereich
- Kalender - Wählen Sie bestimmte Daten mithilfe der Kalenderansicht
Klicken Sie auf „Auswählen“, um Ihre gewählte Zeitperiode anzuwenden, oder auf „Abbrechen“, um den Picker abzubrechen.
Filtern nach Aktionstyp
Abschnitt mit dem Titel „Filtern nach Aktionstyp“Die Aktionen-Menüzeile ermöglicht das Filtern von Protokollen nach bestimmten Ereignistypen:

Zu den verfügbaren Aktionen-Filtern gehören:
- Geräteherzschlag - Periodische Gesundheitsprüfungen von Geräten
- - Version wird gelöscht - Wenn eine Bundle-Version gelöscht wird
- - Zurücksetzen auf Standardversion - Wenn ein Gerät auf die eingebaute Bundle zurückkehrt
- - Version wurde erfolgreich installiert - Erfolgreiche Bundle-Installation
- - Neueste Version wird an Gerät gesendet - Wenn Capgo eine Aktualisierung an ein Gerät sendet
- - Version-Installation fehlgeschlagen - Wenn die Bundle-Installation fehlschlägt
- Verwenden Sie das Suchfeld oben, um spezifische Aktionstypen schnell zu finden. Sie können mehrere Aktionen auswählen, um Protokolle anzuzeigen, die beliebige der ausgewählten Typen entsprechen.
Beispiel-Protokoll-Ausschnitt (fiktive Daten)
Abschnitt mit dem Titel „Beispiel-Protokoll-Ausschnitt (fiktive Daten)“| Zeit (UTC) | Geräte-ID | Aktion | Version | Was es Ihnen sagt |
|---|---|---|---|---|
| 2025-01-14 10:00:01 | A1B2C3 | get | 2.4.1 | Das Gerät hat Capgo gefragt, ob ein Update verfügbar ist |
| 2025-01-14 10:00:03 | A1B2C3 | download_manifest_start | 2.4.1 | Der Manifest-Download wurde gestartet; SDK lädt gerade Dateien herunter |
| 2025-01-14 10:00:07 | A1B2C3 | download_40 | 2.4.1 | Der Bundle-Download ist 40% abgeschlossen |
| 2025-01-14 10:00:12 | A1B2C3 | download_zip_complete | 2.4.1 | Die Zip-Datei wurde heruntergeladen |
| 2025-01-14 10:00:13 | A1B2C3 | set | 2.4.1 | Das Bundle wurde installiert und als nächstes zu laufen markiert |
| 2025-01-14 10:05:00 | B9C8D7 | disableAutoUpdateToMajor | 1.9.0 | Kanalrichtlinie blockierte einen Sprung auf 2.x |
| 2025-01-14 10:05:05 | B9C8D7 | rateLimited | eingebaut | Gerät erreichte die Anforderungsgrenze; SDK wartet bis zum Neustart |
Beispiel Log-Szenarien
Abschnitt mit dem Titel „Beispiel Log-Szenarien“Um Ihnen zu helfen, was die Protokolle Ihnen sagen, sind hier Beispielsequenzen, die reale Geräte-Update-Reisen zeigen:
Erfolgreicher Update-Flow
Abschnitt mit dem Titel „Erfolgreicher Update-Flow“Das ist, was ein gesunder Update-Flow in Ihren Protokollen aussieht:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet das? |
|---|---|---|---|---|
| 10:00:01 | a1b2c3d4 | get | 1.2.0 | Gerät überprüft Updates und erhielt Version 1.2.0 Info |
| 10:00:02 | a1b2c3d4 | download_10 | 1.2.0 | Herunterladen gestartet, 10% abgeschlossen |
| 10:00:03 | a1b2c3d4 | download_50 | 1.2.0 | Herunterladen bei 50% |
| 10:00:05 | a1b2c3d4 | download_complete | 1.2.0 | Herunterladen erfolgreich abgeschlossen |
| 10:00:06 | a1b2c3d4 | set | 1.2.0 | Bundle installiert und aktiviert |
Gerät ist bereits auf dem neuesten Stand
Abschnitt mit dem Titel „Gerät ist bereits auf dem neuesten Stand“Wenn ein Gerät überprüft, aber bereits die aktuellste Version hat:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet das |
|---|---|---|---|---|
| 14:30:00 | e5f6g7h8 | noNew | 1.2.0 | Das Gerät ist bereits auf der neuesten Version, kein Update erforderlich |
Fehlschlag bei der Aktualisierung mit Rollover
Abschnitt mit dem Titel “Fehlschlag bei der Aktualisierung mit Rollover”Wenn eine Aktualisierung fehlschlägt und das Gerät zurückrollt:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet das |
|---|---|---|---|---|
| 11:15:00 | i9j0k1l2 | get | 1.3.0 | Gerät erhielt Update-Info |
| 11:15:02 | i9j0k1l2 | download_complete | 1.3.0 | Herunterladen abgeschlossen |
| 11:15:03 | i9j0k1l2 | set | 1.3.0 | Bundle wurde gesetzt |
| 11:15:10 | i9j0k1l2 | update_fail | 1.3.0 | App ist abgestürzt oder notifyAppReady() wurde nicht aufgerufen - Rollback ausgelöst |
| 11:15:11 | i9j0k1l2 | reset | eingebaut | Gerät wurde auf die eingebaute Version zurückgesetzt |
Aktion erforderlichÜberprüfen Sie, dass Ihre App nach erfolgreicher Initialisierung notifyAppReady() den Plugin-Dokumentation siehe für Details. the plugin documentation
Herunterladefehler
Abschnitt: HerunterladefehlerWenn Netzwerkprobleme die Herunterladung verhindern:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet das? |
|---|---|---|---|---|
| 09:45:00 | m3n4o5p6 | get | 1.2.0 | Gerät hat Update-Info erhalten |
| 09:45:01 | m3n4o5p6 | download_30 | 1.2.0 | Herunterladung begonnen, aber… |
| 09:45:15 | m3n4o5p6 | download_fail | 1.2.0 | Herunterladung fehlgeschlagen (Netzwerkzeitüberschreitung, Verbindung verloren, usw.) |
Aktion erforderlich: Die App wird automatisch auf dem nächsten App-Start wiederholt. Keine Aktion erforderlich, es sei denn, dies tritt häufig auf.
Plan Limit Erreicht
Abschnitt mit dem Titel „Plan Limit Erreicht“Wenn Ihr Konto seine Gerätebegrenzung erreicht:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet das |
|---|---|---|---|---|
| 16:00:00 | q7r8s9t0 | needPlanUpgrade | - | Dieses Gerät erhält keine Updates, bis Sie Ihr Abonnement aufstocken oder der Abrechnungszyklus neu beginnt |
Aktion erforderlich: Stellen Sie Ihr Abonnement auf Warten Sie auf das nächste Abrechnungszyklus.
Kanal-Konfiguration blockiert Updates
Abschnitt mit dem Titel “Kanal-Konfiguration blockiert Updates”Wenn Kanal-Einstellungen eine Aktualisierung verhindern:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet: |
|---|---|---|---|---|
| 12:00:00 | u1v2w3x4 | disableAutoUpdateToMajor | 2.0.0 | Ein Gerät auf v1.x kann sich nicht automatisch auf v2.x (große Versionsnummer) aktualisieren (große Versionsnummer blockiert) |
| 12:05:00 | y5z6a7b8 | disableEmulator | 1.2.0 | Emulator erkannt, und Kanal blockiert Emulatoren |
| 12:10:00 | c9d0e1f2 | disableDevBuild | 1.2.0 | Entwickler-Build erkannt, und Kanal blockiert Entwickler-Builds |
Aktion erforderlich: Diese sind absichtliche Schutzmaßnahmen. Wenn Sie diese Updates zulassen möchten, ändern Sie Ihre Kanal-Einstellungen. Kanal-Einstellungen.
Log-Codes (Capgo Backend-Enum)
Sektion mit dem Titel „Log-Codes (Capgo Backend-Enum)“Diese Codes stammen aus dem stats_action Enum, das vom Dashboard API (capgo/src/types/supabase.types.ts) verwendet wird. Wenn Sie ein neues code im UI sehen, wurde es vom SDK oder Backend ausgestoßen und gegen diese Liste validiert.
Glücklicher Weg & Lebenszyklus
| Code(s) | Bedeutung |
|---|---|
get | Das Gerät hat Capgo nach dem aktuellen Kanalmanifest gefragt |
download_manifest_start, download_manifest_complete | Manifest heruntergeladen wurde / abgeschlossen (für Delta- oder Mehrdateienpaket) |
download_zip_start, download_zip_complete | Zip-Archiv heruntergeladen wurde / abgeschlossen |
download_10 … download_90 | Herunterladestatusmeilensteine |
download_0 | 0% Fortschrittsmarker für das erste Fortschrittsereignis |
download_complete | Gesamtpaket heruntergeladen |
set | Paket für den nächsten Start vorbereitet |
reset | Gerät wurde auf das internen Paket zurückgesetzt |
delete | Paket wurde aus lokalen Speicher entfernt |
uninstall | App wurde entfernt |
app_moved_to_foreground, app_moved_to_background | App-Lebenszyklusereignisse wurden von SDK aufgezeichnet |
ping | Gesundheits-/Herzschlagprüfung vom Gerät |
setChannel, getChannel | Kanal wurde überschrieben oder über SDK-Aufruf abgerufen |
Neue Richtlinienblock / Drosselung schnell fixieren
Sektion mit Titel “Neue Richtlinienblock / Drosselung schnell fixieren”| Code | Weshalb das passiert | Was als nächstes zu tun ist |
|---|---|---|
invalidIp | Capgo hat Verkehr erkannt, der wie Bot-Verkehr aussieht (Google/Cloud-Infrastruktur-IP). | Bei echten Benutzern ignorieren; erneut von echten Geräten und normalen Netzwerken aus versuchen oder nach einiger Zeit überprüfen. |
needPlanUpgrade | Die Organisation hat das Plan/Geräte-Limit erreicht. | Plan in Dashboard upgraden oder auf das nächste Abrechnungszyklus warten. |
semver_error | Die native App-Version in der Konfiguration fehlt oder ist nicht ein gültiges Semver (x.y.z). | Setzen plugins.CapacitorUpdater.version zu einem gültigen Semver, dann überprüfen Sie es in der SemVer-Tester und baut die App neu. |
disablePlatformIos | iOS ist in der Kanalpolitik deaktiviert. | Wenn dies versehentlich geschah, aktivieren Sie iOS in diesem Kanal und veröffentlichen Sie die Routing-Informationen neu. Wenn Sie iOS absichtlich in diesem Track blockieren, lassen Sie es ab und verschieben Sie die iOS-Builds in einen separaten Kanal. |
disablePlatformAndroid | Android ist in der Kanalpolitik deaktiviert. | Wenn dies versehentlich geschah, aktivieren Sie Android in diesem Kanal und veröffentlichen Sie die Routing-Informationen neu. Wenn Sie Android absichtlich in diesem Track blockieren, lassen Sie es ab und verschieben Sie die Android-Builds in einen separaten Kanal. |
disableAutoUpdate | Der Kanal-automatische-Update-Modus blockiert diese Update-Style. | Ändern Sie die Kanal-automatische-Update-Politik (major/minor/patch/metadata/keine) , um Ihre geplante Veröffentlichung zuzulassen. |
disableAutoUpdateUnderNative | Der Kanal ist auf Updates älter als die Gerätebasis gestellt. | Schieben Sie eine Version ab oder auf der nativen Basis oder deaktivieren Sie die unter-nativen Schutzfunktion. |
disableAutoUpdateMetadata | Der Kanal erfordert min_update_version Metadaten und die App ist älter. | Setze min_update_version für das Zielbundle oder die Veröffentlichung aus einer neueren nativen Version. |
disableAutoUpdateToMajor | Der Kanal blockiert Sprung von Hauptversionen. | Halte die Hauptversionen in der gleichen Kanalstrategie, oder erlaube Sprünge von Hauptversionen für diesen Track. |
disableAutoUpdateToMinor | Der Kanal blockiert Sprünge von Minorversionen. | Halte die Minorversionen in der gleichen Kanalstrategie, oder erlaube Sprünge von Minorversionen für diesen Track. |
disableAutoUpdateToPatch | Der Kanal blockiert Sprünge auf Patch-Ebene für diesen Flow. | Passen Sie Ihren Release-Takt an, oder öffnen Sie Patch-Sprünge in der Kanalpolitik für diesen Track. |
disableEmulator | Emulator-Updates sind für diesen Kanal nicht erlaubt. | Wenn dies versehentlich geschah, schalten Sie Emulator-Updates in einem Testkanal ein, in dem Sie Emulatoren validieren. Wenn dies absichtlich war, lassen Sie diesen Kanal für Emulator-Updates blockiert und verwenden Sie einen anderen Kanal für Emulator-Builds. |
disableDevBuild | Entwicklerversionen sind für diesen Kanal blockiert. | Wenn dies versehentlich geschah, erlauben Sie Entwicklerversionen oder verschieben Sie diesen Gerät in einen Entwickler-kanal, der Entwicklerversionen zulässt. Wenn dies absichtlich war, lassen Sie diesen Kanal auf Release-Builds beschränkt. |
disableProdBuild | A Gerät wurde in Produktionsmodus erstellt, genannt /updates, während Ihr Kanal es blockiert. | Wenn dies versehentlich geschah, ermöglichen Sie Produktionsupdates in diesem Kanal und veröffentlichen Sie ihn erneut. Wenn dies absichtlich war, lassen Sie die Einschränkung bestehen und senden Sie Produktionsbuilds an den richtigen Kanal/Build. |
cannotGetBundle | Capgo konnte keine gültige Download-URL für die ausgewählte Bundle erstellen. | Laden Sie das Bundle erneut hoch oder regenerieren Sie Manifeste und überprüfen Sie die Einstellungen für R2/public Bundle. |
cannotUpdateViaPrivateChannel | Die App versuchte, sich selbst in einen privaten Kanal umzuschalten, der die Selbstzuweisung nicht zulässt. | Zulassen allow_device_self_set auf dem Kanal oder wechseln Sie zu einem öffentlichen/erlaubten Kanal. |
channelMisconfigured | Die Kanal-Automatisierungseinstellung fehlt erforderliche Daten (version_number ohne min_update_version). | Füllen Sie die fehlende Konfiguration für diese Regel oder wechseln Sie zu einem einfacheren Automatisierungsmodus. |
missingBundle | Das Bundle hat keine herunterladbare Payload (fehlend) external_url/r2_path und kein Manifest). | Rebuild/re-upload die Version und überprüfen Sie, ob das Bundle echte Dateien enthält. |
NoChannelOrOverride | Kein Kanal passt sich diesem Gerät (kein Cloud-Standard + keine Konfigurationsrückfall + keine Überschreibung). | Setzen Sie einen Kanalstandard in der Konsole oder behalten Sie einen Test defaultChannel in dieser Version. |
rateLimited | Zu viele Update/Kanalaufrufe in kurzer Zeit (oft render-Loop setChannel/getChannel). | Stoppen Sie den Aufruf im Render. Rufen Sie nur auf Benutzeraktion. Verwenden Sie defaultChannel in capacitor.config. |
keyMismatch | Die App- und Bundle-Verschlüsselungsschlüssel IDs unterscheiden sich (device_key_id gegen bundle_key_id). | In der Konsole vergleichen Sie Gerät und Bundle-Schlüssel-IDs. Wenn sie sich unterscheiden, veröffentlichen Sie mit demselben Schlüssel und dem entsprechenden CLI/Plugin-versions; Schlüsselcodierung kann zwischen den Versionen unterschiedlich sein. |
disableDevice | Ein echtes Telefon/Tablet wurde blockiert, weil dieser Kanal auf echte Geräte blockiert ist. | If zufällig, schalten Sie die Updates auf realem Gerät in diesem Kanal ein. Wenn es absichtlich war, lassen Sie es blockiert und leiten Sie reale Geräte in einen anderen Kanal um. |
disablePlatformElectron | Electron ist in diesem Kanal blockiert. | Wenn dies versehentlich war, aktivieren Sie Electron in diesem Kanal und veröffentlichen Sie die Routing neu. Wenn es absichtlich war, lassen Sie es blockiert und senden Sie Electron-Nutzer in einen dedizierten Kanal. |
customIdBlocked | Eine benutzerdefinierte Geräte-ID wurde gesendet, aber diese App akzeptiert keine benutzerdefinierten IDs. | Schalten Sie die Sendung von benutzerdefinierten IDs aus oder aktivieren Sie benutzerdefinierte IDs nur, wenn Ihr Workflow dies erfordert. |
blocked_by_server_url | Die App ist server.url konfiguriert, also Capacitor dient stattdessen remote URL anstatt lokaler Dateien. | Entfernen/Löschen server.url für Produktionsbuilds und lassen Sie die Update-Payloads lokal. |
backend_refusal | Der Updater ist v4, was der Backend nicht mehr akzeptiert. | Plugin/CLI aktualisieren v5+ (vorziehen v8), mit Capacitor v5+, dann neu aufbauen und das Bundle-Metadaten neu veröffentlichen. |
| Konfigurationen oder Richtlinienblöcke |
| Code(s) | Warum die Aktualisierung blockiert wurde |
|---|---|
disableAutoUpdate, disableAutoUpdateToMajor, disableAutoUpdateToMinor, disableAutoUpdateToPatch, disableAutoUpdateMetadata, disableAutoUpdateUnderNative | Der Kanalstrategie ist dies verboten Semver-Sprung |
disablePlatformIos, disablePlatformAndroid | Die Plattform ist auf dem Kanal deaktiviert |
disableDevBuild, disableEmulator | Entwicklungsbuilds oder Emulatoren sind auf diesem Kanal nicht erlaubt |
disableProdBuild, disableDevice, disablePlatformElectron | Produktionsbuilds, echte Geräte oder Electron sind für diesen Kanal blockiert |
customIdBlocked | Benutzerdefinierte Geräte-IDs werden für diese App nicht akzeptiert |
cannotUpdateViaPrivateChannel, NoChannelOrOverride, channelMisconfigured | Kanalwahl oder -überschreibung fehlgeschlagen |
missingBundle, cannotGetBundle | Das Manifest bezieht sich auf eine Paket Capgo kann nicht bereitstellen |
needPlanUpgrade | Die Organisation hat die Grenze für Pläne/Geräte erreicht |
rateLimited | Zu viele Anfragen; SDK blockiert bis zum Neustart |
blocked_by_server_url, backend_refusal, invalidIp | Ein Server-seitiger Regeln blockierte die Anfrage |
Herunterladen / Integrität / Installationsfehler
| Code(s) | Bedeutung |
|---|---|
download_fail | Paket herunterladen fehlgeschlagen (Netzwerk- oder Antwortfehler) |
download_manifest_file_fail, download_manifest_checksum_fail, download_manifest_brotli_fail | Das Manifest-Datei konnte nicht abgerufen oder validiert werden |
checksum_fail, checksum_required | Integritätsprüfung fehlgeschlagen oder Prüfsumme fehlt |
unzip_fail, directory_path_fail, canonical_path_fail, windows_path_fail | Dateisystem- oder Entpackungsvalidierung fehlgeschlagen |
decrypt_fail | Verschlüsselung fehlgeschlagen (verschlüsselter Bundle) |
update_fail | Bundle wurde installiert, aber App wurde nie aufgerufen notifyAppReady(); Rolloback ausgelöst |
download_zip_* ohne weitere set | Download abgeschlossen, aber Installationsphase wurde nie abgeschlossen |
Runtime / Plattformereignisse
__CAPGO_KEEP_0__(s)| Code(s) | Crashereignisse aus JavaScript- oder nativen Runtime-Schichten. Metadata enthält oft Stapel, Quelle und aktive Versioneninformationen. |
|---|---|
app_crash, app_crash_native | Android meldete ein Anwendungsprogramm, das nicht reagiert. |
app_anr | App-Prozess wurde aufgrund von Speicher- oder Ressourcenlimits beendet. |
app_killed_low_memory, app_killed_excessive_resource_usage | Runtime / Plattformereignisse |
app_initialization_failure, app_memory_warning | Der Start wurde unterbrochen oder es wurde Druck auf die Speicher beobachtet, bevor die normale Laufzeit erreicht wurde. |
webview_javascript_error, webview_unhandled_rejection, webview_resource_error, webview_security_policy_violation, webview_unclean_restart, webview_render_process_gone, webview_content_process_terminated | WebView-Lebenszyklus und JS-/Rendering-Fehler. Installieren Sie Sentry in beiden JS- und native-Layer, um Stapelüberwachung, Sitzung/Gerätekontext und URL/Zustand für schnellere Reparaturen zu erfassen. |
os_version_changed, native_app_version_changed | Das Betriebssystem oder die native App-Version wurde geändert; dies hilft, Plattform-eigene Rollout-Effekte von der Web-Bundle-Behavior zu trennen. |
➡️ Bedarf an tieferer Anleitung für code? Sehen Sie sich Vollständige Log-Code-Referenz und Fehlersuche-Leitfaden.
Erhaltung mehrer Details zu einem Log
Abschnitt mit dem Titel “Erhaltung mehrer Details zu einem Log”Wenn Sie auf eine bestimmte Eintrag klicken, wird es normalerweise auf die Geräteseite führen. Dies ermöglicht es Ihnen, die vollständige Historie für dieses Gerät zu sehen, was sehr hilfreich sein kann, um Gerätespezifische Probleme zu diagnostizieren oder dessen Update-Reise zu verstehen.
Fortsetzung von Logs
Abschnitt mit dem Titel “Fortsetzung von Logs”If Sie __CAPGO_KEEP_0__ verwenden, Protokolle um ein Dashboard und API-Operationen zu planen, verbinden Sie es mit API-Übersicht zur Implementierungsdetail in API-Übersicht, Einführung zur Implementierungsdetail in Einführung, API-Schlüssel zur Implementierungsdetail in API-Schlüssel, Geräte zur Implementierungsdetail in Geräte, und Pakete für die Implementierungsdetails in Bundles.