Protokolle
Kopiere einen Setup-Vorschlag mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin.
Protokolle und Log-Insights
Abschnitt mit dem Titel “Protokolle und Log-Insights”Die App Protokolle Öffnet die Registerkarte Log-Insights standardmäßig. Verwenden Sie Insights, um Kategorien, Versionen und Geräte für einen Zeitraum von 1, 3, 7 oder 30 Tagen zu priorisieren. Wechseln Sie zur Protokolle context
Page/area: Capgo Builder / native cloud build product page. Role: Short UI label or navigation item. Seen in: page native-build.astro. Message key `native_build_v2_trust_logs_lbl` (Native Build V2 Trust Logs Lbl).
Unterregisterkarte, wenn Sie die zugrunde liegenden Geräteeinträge, Filter und Zeitstempel unten beschrieben benötigen.The raw Logs subtab provides a detailed history of update events and diagnostic information for your application. It is useful for confirming the device-level evidence behind an Insight, troubleshooting an update path, and understanding how devices interact with Capgo. Open an app, choose Abschnitt mit dem Titel “Verständnis von Anwendungsprotokollen”Die Roh-Protokolle-Unterregisterkarte bietet eine detaillierte Historie von Update-Ereignissen und diagnostischen Informationen zu Ihrer Anwendung. Sie ist nützlich zum Bestätigen der Geräteevidenz hinter einem Insight, zum Troubleshooting eines Updatepfads und zum Verständnis, wie Geräte mit __CAPGO_KEEP_0__ interagieren. Öffnen Sie eine App, wählen Sie Protokolle context

Die Oberfläche für Rohlogdateien enthält:
- Unterseite für Logdateien — die Steuerung für die Navigation einzelner Logzeilen.
- Neuladen — aktualisiert die Logliste mit den neuesten Daten.
- Zeitraum- und Aktionfilter — verengt den Ereignisstrom nach Zeit und Aktion.
Jede Zeile zeigt:
- Zeitstempel (UTC)
- Geräte-ID
- Aktion code (was ist passiert)
- Version-Name (Bundle oder
builtin)
Klicken Sie auf eine Zeile, um zur Gerätedetailseite für seinen vollständigen 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 das Datumsfeld verwenden:

- Schnellvorlagen - Wählen Sie eine häufige Zeitperiode: Die letzten 1h, 3h, 6h oder 12h
- Startzeit - Legen Sie eine benutzerdefinierte Startzeit für die Zeitperiode fest
- Endzeit - Legen Sie eine benutzerdefinierte Endzeit für die Zeitperiode fest
- Kalender - Wählen Sie bestimmte Daten mithilfe der Kalenderansicht aus
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“Mit dem Aktionen-Menü können Sie die Protokolle nach bestimmten Ereignistypen filtern:

Verfügbare Aktionen zum Filtern umfassen:
- Geräteherzschlag - Periodische Gesundheitsprüfungen von Geräten
- Versionenlöschen angefordert - Wenn eine Bundle-Version gelöscht wird
- Zurücksetzen auf Standardversion - Wenn ein Gerät auf die eingebaute Bundle zurückkehrt
- Version erfolgreich installiert - Erfolgreiche Bundle-Installation
- Neue Version an Gerät gesendet - Wenn Capgo eine Aktualisierung an ein Gerät sendet
- Versioninstallation fehlgeschlagen - Wenn die Bundleinstallation fehlschlägt
Verwenden Sie das Suchfeld oben, um bestimmte Aktionstypen schnell zu finden. Sie können mehrere Aktionen auswählen, um Protokolle anzuzeigen, die beliebige der ausgewählten Typen entsprechen.
Beispielprotokollsnippet (fiktive Daten)
Abschnitt mit dem Titel „Beispielprotokollsnippet (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 | Bundle-Download ist 40% abgeschlossen |
| 2025-01-14 10:00:12 | A1B2C3 | download_zip_complete | 2.4.1 | Zip wurde heruntergeladen |
| 2025-01-14 10:00:13 | A1B2C3 | set | 2.4.1 | 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 | integriert | Gerät erreichte die Anforderungsgrenze; SDK wartet bis zum Neustart |
Beispiel-Szenarien für Protokolle
Abschnitt mit dem Titel „Beispiel-Szenarien für Protokolle“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-Prozess in Ihren Protokollen aussieht:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet es |
|---|---|---|---|---|
| 10:00:01 | a1b2c3d4 | get | 1.2.0 | Das Gerät wurde auf Updates überprüft und erhielt die Version 1.2.0 info |
| 10:00:02 | a1b2c3d4 | download_10 | 1.2.0 | Herunterladen begonnen, 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 neueste Version hat:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet es |
|---|---|---|---|---|
| 14:30:00 | e5f6g7h8 | noNew | 1.2.0 | Das Gerät ist bereits auf der neuesten Version, kein Update erforderlich |
Fehlgeschlagener Update mit Rollover
Abschnitt mit dem Titel „Fehlgeschlagener Update mit Rollover“Wenn ein Update 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 stürzte ab oder wurde nicht aufgerufen - Rollback ausgelöst notifyAppReady() eingebaut |
| 11:15:11 | i9j0k1l2 | reset | Gerät wurde auf die eingebaute Version zurückgesetzt | Aktion erforderlich |
: Überprüfe, dass deine App die Funktion aufruft: Überprüfe, dass deine App die Funktion aufruft notifyAppReady() nach erfolgreicher Initialisierung. Siehe die Plugin-Dokumentation für Details.
Herunterladefehler
Abschnitt mit dem Titel „Herunterladefehler“Wenn Netzwerkprobleme die Herunterladung verhindern:
| Zeit | Geräte-ID | Aktion | Version | Was bedeutet es |
|---|---|---|---|---|
| 09:45:00 | m3n4o5p6 | get | 1.2.0 | Gerät erhielt Update-Info |
| 09:45:01 | m3n4o5p6 | download_30 | 1.2.0 | Herunterladen gestartet, aber… |
| 09:45:15 | m3n4o5p6 | download_fail | 1.2.0 | Herunterladen fehlgeschlagen (Netzwerkzeitüberschreitung, Verbindung verloren, usw.) |
Aktion erforderlich: Die App wird sich automatisch bei der nächsten App-Startsversuche wiederholen. Eine Aktion ist nur erforderlich, wenn dies häufig auftritt.
Plan-Grenze erreicht
Abschnitt mit dem Titel „Plan-Grenze erreicht“Wenn Ihr Konto seine Geräte-Grenze erreicht hat:
| Zeit | Geräte-ID | Aktion | Version | Was es bedeutet |
|---|---|---|---|---|
| 16:00:00 | q7r8s9t0 | needPlanUpgrade | - | Dieses Gerät erhält keine Updates, bis Sie das Abonnement aufsteigen oder der Abrechnungszeitraum neu beginnt. |
Maßnahme erforderlich: Upgrade Ihres Angebots oder warten Sie auf den nächsten Abrechnungszeitraum.
Kanal-Konfiguration blockiert Updates
Abschnitt mit dem Titel „Kanal-Konfiguration blockiert Updates“Wenn die Kanal-Einstellungen einen Update verhindern:
| Zeit | Gerätekennung | Aktion | Version | Was es bedeutet |
|---|---|---|---|---|
| 12:00:00 | u1v2w3x4 | disableAutoUpdateToMajor | 2.0.0 | Gerät auf v1.x kann nicht automatisch auf v2.x aktualisieren (große Versionsnummer blockiert) |
| 12:05:00 | y5z6a7b8 | disableEmulator | 1.2.0 | Emulator erkannt, und der Kanal blockiert Emulatoren |
| 12:10:00 | c9d0e1f2 | disableDevBuild | 1.2.0 | Entwicklerbaukasten erkannt, und der Kanal blockiert Entwicklerbausätze |
Aktion erforderlich: Diese sind absichtliche Schutzmaßnahmen. Wenn Sie diese Aktualisierungen zulassen möchten, ändern Sie Ihre Kanal-Einstellungen.
Protokollcodes (Capgo Backend-Enum)
Sektion mit dem Titel "Protokollcodes (Capgo Backend-Enum)"Diese Codes stammen aus der stats_action Enum, die 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.
Happy Path & Lebenszyklus
| Code(s) | Bedeutung |
|---|---|
get | Das Gerät hat Capgo nach dem aktuellen Kanalmanifest gefragt |
download_manifest_start, download_manifest_complete | Manifest-Download begann / beendet (für Delta- oder Multi-Datei-Bundles) |
download_zip_start, download_zip_complete | Zip-Archiv-Download begann / beendet |
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 eingebaute Paket zurückgesetzt |
delete | Paket aus lokalen Speicher gelöscht |
uninstall | Anwendung wurde entfernt |
app_moved_to_foreground, app_moved_to_background | App lifecycle events recorded by SDK |
ping | Überprüfung der Gesundheit/Herzschlag des Geräts |
setChannel, getChannel | Kanal überschrieben oder über SDK abgerufen |
Neue Richtlinienblockierung / Beschleunigung
Schnelllösung für neue Richtlinienblockierung / Beschleunigung| Code | Weshalb das passiert | Was als Nächstes zu tun ist |
|---|---|---|
invalidIp | Capgo hat Traffic erkannt, der wie Bot-Traffic aussieht (Google/Cloud-Infrastruktur-IP). | Bei echten Benutzern ignorieren; von echten Geräten und normalen Netzwerken erneut versuchen oder nach einiger Zeit überprüfen. |
needPlanUpgrade | Die Organisation hat das Plan/Geräte-Limit erreicht. | Plan im Dashboard upgraden oder auf den nächsten Abrechnungszyklus warten. |
semver_error | Native-App-Version in der Konfiguration fehlt oder ist nicht gültig (x.y.z). | Setze plugins.CapacitorUpdater.version auf gültig, dann überprüfe es in der SemVer-Tester und baue die App neu auf. |
disablePlatformIos | iOS ist in der Kanalpolitik deaktiviert. | Wenn dies versehentlich passiert ist, aktiviere iOS in diesem Kanal und veröffentliche die Routing-Datei neu. Wenn du iOS absichtlich in diesem Track blockieren möchtest, lass es ab und verschiebe die iOS-Builds in einen separaten Kanal. |
disablePlatformAndroid | Android ist in der Kanalpolitik deaktiviert. | Wenn dies versehentlich passiert ist, aktiviere Android in diesem Kanal und veröffentliche die Routing-Datei neu. Wenn du Android absichtlich in diesem Track blockieren möchtest, lass es ab und verschiebe die Android-Builds in einen separaten Kanal. |
disableAutoUpdate | Der Kanal-Update-Modus blockiert diese Update-Style. | Ändere die Kanal-Update-Politik (major/minor/patch/metadata/none), um deine geplante Veröffentlichung zuzulassen. |
disableAutoUpdateUnderNative | Der Kanal ist auf Updates älter als die Geräte-Basislinie gesetzt. | Pushen Sie eine Version auf oder über der native Baseline, oder deaktivieren Sie die Unter-Native-Schutzfunktion. |
disableAutoUpdateMetadata | Der Channel erfordert min_update_version Metadaten und die App ist älter. | Einstellen min_update_version für das Zielbundle oder die Veröffentlichung aus einer neueren native Version. |
disableAutoUpdateToMajor | Der Channel blockiert große Versionssprünge. | Behalten Sie die großen Versionen in derselben Channel-Strategie bei, oder erlauben Sie große Sprünge für diesen Track. |
disableAutoUpdateToMinor | Der Channel blockiert kleine Versionssprünge. | Behalten Sie die kleinen Versionen in derselben Channel-Strategie bei, oder erlauben Sie kleine Sprünge für diesen Track. |
disableAutoUpdateToPatch | Der Channel blockiert Sprünge auf der Patch-Ebene für diesen Flow. | Passen Sie Ihren Release-Takt an, oder öffnen Sie Patch-Sprünge in der Channel-Politik für diesen Track. |
disableEmulator | Emulator-Updates sind für diesen Channel nicht erlaubt. | Wenn dies versehentlich geschah, aktivieren Sie die Emulator-Updates in einem Testkanal, in dem Sie Emulatoren validieren. Wenn dies absichtlich geschah, lassen Sie diesen Kanal für Emulatoren gesperrt und verwenden Sie einen anderen Kanal für Emulatoren-Builder. |
disableDevBuild | Dev-Builds sind für diesen Kanal blockiert. | Wenn dies versehentlich geschah, erlauben Sie Entwickler-Updates oder verschieben Sie das Gerät auf einen Entwickler-fähigen Kanal. Wenn dies absichtlich geschah, lassen Sie diesen Kanal nur auf Release-Builds zugreifen. |
disableProdBuild | Ein Gerätebuild in Produktionsmodus namens /updates, während Ihr Kanal es blockierte. | Wenn dies versehentlich geschah, erlauben Sie Produktions-Updates in diesem Kanal und veröffentlichen Sie ihn erneut. Wenn dies absichtlich geschah, 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 den ausgewählten Bundle erstellen. | Laden Sie den Bundle erneut hoch oder regenerieren Sie Manifeste und überprüfen Sie die R2/public Bundle-Einstellungen. |
cannotUpdateViaPrivateChannel | Die App versuchte, sich selbst auf einen privaten Kanal umzuschalten, der die Selbstzuweisung nicht zulässt. | Aktivieren Sie allow_device_self_set auf dem Kanal oder wechseln Sie auf einen öffentlichen/erlaubten Kanal. |
channelMisconfigured | Der Kanal-Auto-Update-Regel fehlt erforderliche Daten (version_number ohne min_update_version). | Füllen Sie die fehlende Konfiguration für diese Regel oder wechseln Sie zu einer einfachen automatischen Aktualisierungsmodus. |
missingBundle | Bundle hat keine herunterladbare Payload (fehlende external_url/r2_path und keine Manifestdatei). | Rekonstruieren/Schließen Sie 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 Aktualisierungs-/Kanalaufrufe in kurzer Zeit (oft render-Loop setChannel/getChannel). | Hören Sie auf, in der Renderung aufzurufen. Rufen Sie nur bei Benutzeraktion auf. Verwenden Sie defaultChannel in capacitor.config. |
keyMismatch | Die App- und Bundle-Verschlüsselungsschlüssel IDs unterscheiden sich (device_key_id vs bundle_key_id). | In der Konsole vergleichen Sie die Geräte- und Bundle-Schlüssel-IDs. Wenn sie sich unterscheiden, veröffentlichen Sie mit demselben Schlüssel und passender CLI/Plugin-Version; die Schlüsselcodierung kann zwischen den Versionen unterschiedlich sein. |
disableDevice | Eine echte Telefon/Tablet-App wurde blockiert, weil dieser Kanal auf echte Geräte blockiert ist. | Wenn dies versehentlich passiert ist, aktivieren Sie die Echtgeräte-Updates in diesem Kanal. Wenn dies absichtlich passiert ist, lassen Sie es blockiert und leiten Sie die Echtgeräte in einen anderen Kanal um. |
disablePlatformElectron | Electron ist in diesem Kanal blockiert. | Wenn dies versehentlich passiert ist, aktivieren Sie Electron in diesem Kanal und veröffentlichen Sie die Routen neu. Wenn dies absichtlich passiert ist, lassen Sie es blockiert und leiten Sie die Electron-Benutzer in einen dedizierten Kanal um. |
customIdBlocked | Eine benutzerdefinierte Geräte-ID wurde gesendet, aber diese App akzeptiert keine benutzerdefinierten IDs. | Schalten Sie die Übertragung benutzerdefinierter IDs aus oder aktivieren Sie sie nur, wenn Ihr Workflow dies erfordert. |
blocked_by_server_url | Die App hat server.url konfiguriert, also dient Capacitor stattdessen einer Remote-URL anstatt lokalen Dateien. | Entfernen/Löschen server.url für Produktionsbuilds und lassen Sie die Update-Payloads lokal. |
backend_refusal | Der Updater wird v4, wobei der Backend diese nicht mehr akzeptiert. | Das Plugin/CLI aufwerten Sie auf v5+ (vorzugsweise) v8), mit Capacitor v5+, dann neu erstellen und das Bundle-Metadaten neu veröffentlichen. |
| Konfiguration oder Richtlinienblöcke |
| Code(s) | Warum die Aktualisierung blockiert wurde |
|---|---|
disableAutoUpdate, disableAutoUpdateToMajor, disableAutoUpdateToMinor, disableAutoUpdateToPatch, disableAutoUpdateMetadata, disableAutoUpdateUnderNative | Der Kanalstrategie verbietet dies semver-Sprung |
disablePlatformIos, disablePlatformAndroid | Die Plattform ist auf dem Kanal deaktiviert |
disableDevBuild, disableEmulator | Entwicklerversionen oder Emulatoren sind nicht erlaubt |
disableProdBuild, disableDevice, disablePlatformElectron | Produktionsversionen, reale 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 | Fehler bei der Auswahl oder Überschreibung des Kanals |
missingBundle, cannotGetBundle | Das Manifest bezieht sich auf ein Paket Capgo kann nicht bereitstellen |
needPlanUpgrade | Die Organisation hat die Grenzen für das Plan/Geräte-Set erreicht |
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 fehlender Prüfsumme |
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 die App wurde nie aufgerufen notifyAppReady() ; Rollback ausgelöst |
download_zip_* mit keiner nachfolgenden set | Herunterladen abgeschlossen, aber Installationsphase wurde nie abgeschlossen |
Laufzeit- / Plattformereignisse
Abschnitt mit dem Titel “Laufzeit- / Plattformereignisse”| Code(s) | Bedeutung |
|---|---|
app_crash, app_crash_native | Crash-Ereignisse aus JavaScript- oder nativen Laufzeitstufen. Metadata enthält oft Stapel, Quelle und aktive Versionen-Info. |
app_anr | Android meldete ein Anwendungsprogramm, das nicht reagiert. |
app_killed_low_memory, app_killed_excessive_resource_usage | Anwendungsbereich beendet aufgrund von Speicher- oder Ressourcenlimits. |
app_initialization_failure, app_memory_warning | Der Start wurde unterbrochen oder vor der normalen Laufzeit wurde Druck auf den Speicher beobachtet. |
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 Layers, um Stapelüberwachung, Sitzung/ Gerätekontext und URL/Zustand für schnellere Fehlerbehebungen zu erfassen. |
os_version_changed, native_app_version_changed | Betriebssystem- oder native App-Version geändert; dies hilft, Plattform-eigene Rollout-Effekte von der Web-Bundle-Behavior zu trennen. |
➡️ Bedürfen Sie tieferer Anweisungen für code? Sehen Sie sich an: Vollständige Log-Code-Referenz und Fehlersuche-Leitfaden.
Mehr Details über einen Log-Eintrag erhalten
Abschnitt mit dem Titel "Mehr Details über einen Log-Eintrag erhalten"Wenn Sie auf einen bestimmten Log-Eintrag klicken, wird es Ihnen normalerweise zur Geräteseiteführen. Dies ermöglicht es Ihnen, die vollständige Historie für dieses Gerät zu sehen, was sehr hilfreich für die Diagnose von Geräte-spezifischen Problemen oder das Verständnis seines Update-Journey sein kann.
Weiter von Logs
Abschnitt mit dem Titel ‘Weiter von Logs’Wenn Sie ‘Logs’ verwenden Logs um das Dashboard und die API-Operationen zu planen, verbinden Sie es mit API-Übersicht zur Implementierungsdetail in der API-Übersicht Einführung zur Implementierungsdetail in der Einführung API-Schlüssel zur Implementierungsdetail in den API-Schlüsseln Geräte zur Implementierungsdetail in Geräten Pakete für die Implementierungsdetails in Paketen.