Journaux
Copiez un prompt de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Comprendre les journaux d'application
Section intitulée “Comprendre les journaux d'application”La page des journaux fournit une histoire détaillée des événements de mise à jour et des informations de diagnostic pour votre application. C'est crucial pour surveiller le processus de mise à jour, résoudre les problèmes et comprendre comment vos appareils interagissent avec Capgo. Vous pouvez y accéder en cliquant sur votre application et puis cliquant sur l'onglet “Journaux” (précédemment nommé “mises à jour” dans certaines anciennes captures d’écran ou documentation).
Dès lors, vous devriez voir une page similaire, affichant une liste d'entrées de journal :

L'interface de la page des journaux comprend :
- Onglet des journaux - L'onglet de navigation pour accéder à la vue des journaux
- Bouton de rechargement - Rafraîchir la liste des journaux avec les données les plus récentes
- Filtres de plage de temps et d'actions - Filtrez les journaux par plage de date et type d'action (voir les sections ci-dessous)
Chaque ligne montre :
- Heure de timestamp (UTC)
- ID de l'appareil
- Action code (ce qui s'est passé)
- Nom de la version (bundle ou
builtin)
Cliquez sur une ligne pour accéder à la page de détails de l'appareil pour l'ensemble de l'historique.
Filtrer par plage de dates
Section intitulée “Filtrer par plage de dates”Vous pouvez filtrer les journaux par une période de temps spécifique en utilisant le sélecteur de date :

- Préférences rapides - Sélectionnez des plages de temps courantes : les 1 dernières heures, 3 heures, 6 heures ou 12 heures
- Heure de Début - Définir une heure de début personnalisée pour la plage
- Heure de Fin - Définir une heure de fin personnalisée pour la plage
- Calendrier - Sélectionnez des dates spécifiques en utilisant la vue du calendrier
Cliquez sur « Sélectionner » pour appliquer la plage de dates choisie, ou sur « Annuler » pour fermer le sélecteur de date.
Filtrage par Type d'Action
Section intitulée « Filtrage par Type d'Action »Le menu déroulant Actions vous permet de filtrer les journaux par des types d'événements spécifiques :

Les filtres d'actions disponibles incluent :
- Cœur de batterie du dispositif - Contrôles de santé périodiques des appareils
- Suppression de version demandée - Lorsqu'une version de bundle est supprimée
- Réinitialisation à la version par défaut - Lorsqu'un appareil redevient la version intégrée de bundle
- Version installée avec succès - Installation de bundle réussie
- Nouvelle version envoyée au dispositif - Lorsque Capgo envoie une mise à jour à un appareil
- Échec de l'installation de la version - Lorsque l'installation du bundle échoue
Utilisez la zone de recherche en haut pour trouver rapidement les types d'actions spécifiques. Vous pouvez sélectionner plusieurs actions pour afficher les journaux correspondant à n'importe quel type sélectionné.
Extrait de journal d'exemple (données fictives)
Section intitulée « Extrait de journal d'exemple (données fictices) »| Heure (UTC) | ID de l'appareil | Action | Version | Ce que cela vous dit |
|---|---|---|---|---|
| 2025-01-14 10:00:01 | A1B2C3 | get | 2.4.1 | L'appareil a demandé à Capgo si une mise à jour était disponible |
| 2025-01-14 10:00:03 | A1B2C3 | download_manifest_start | 2.4.1 | La récupération du manifeste a démarré ; SDK va télécharger des fichiers |
| 2025-01-14 10:00:07 | A1B2C3 | download_40 | 2.4.1 | Le téléchargement du bundle est à 40% terminé |
| 2025-01-14 10:00:12 | A1B2C3 | download_zip_complete | 2.4.1 | Le zip est terminé de télécharger |
| 2025-01-14 10:00:13 | A1B2C3 | set | 2.4.1 | Le bundle est installé et marqué comme prochain à exécuter |
| 2025-01-14 10:05:00 | B9C8D7 | disableAutoUpdateToMajor | 1.9.0 | La politique de canal a bloqué un saut vers 2.x |
| 2025-01-14 10:05:05 | B9C8D7 | rateLimited | intégré | Le dispositif a atteint la limite de requête ; SDK se retire jusqu'à redémarrage |
Scénarios d'exemple de journal
Section intitulée “Scénarios d'exemple de journal”Pour vous aider à comprendre ce que les journaux vous disent, voici des séquences d'exemple montrant des parcours de mise à jour réels sur les appareils :
Flux de mise à jour réussie
Section intitulée “Flux de mise à jour réussie”C'est ce que ressemble une mise à jour saine dans vos journaux :
| Temps | ID de l'appareil | Action | Version | Ce que cela signifie |
|---|---|---|---|---|
| 10:00:01 | a1b2c3d4 | get | 1.2.0 | L'appareil a été vérifié pour des mises à jour et a reçu les informations de version 1.2.0 |
| 10:00:02 | a1b2c3d4 | download_10 | 1.2.0 | Le téléchargement a commencé, 10% terminé |
| 10:00:03 | a1b2c3d4 | download_50 | 1.2.0 | Téléchargement en cours à 50% |
| 10:00:05 | a1b2c3d4 | download_complete | 1.2.0 | Le téléchargement a été effectué avec succès |
| 10:00:06 | a1b2c3d4 | set | 1.2.0 | Le bundle a été installé et activé |
L'appareil est déjà à jour
Section intitulée “L'appareil est déjà à jour”Lorsqu'un appareil vérifie mais dispose déjà de la dernière version :
| Temps | ID de l'appareil | Action | Version | Ce que cela signifie |
|---|---|---|---|---|
| 14:30:00 | e5f6g7h8 | noNew | 1.2.0 | L'appareil est déjà à la dernière version, aucune mise à jour n'est nécessaire |
Mise à jour échouée avec Rollback
Section intitulée “Mise à jour échouée avec Rollback”Lorsqu'une mise à jour échoue et que l'appareil revient en arrière :
| Temps | ID de l'appareil | Action | Version | Ce que cela signifie |
|---|---|---|---|---|
| 11:15:00 | i9j0k1l2 | get | 1.3.0 | Le dispositif a reçu des informations d'actualisation |
| 11:15:02 | i9j0k1l2 | download_complete | 1.3.0 | Téléchargement terminé |
| 11:15:03 | i9j0k1l2 | set | 1.3.0 | Le bundle a été configuré |
| 11:15:10 | i9j0k1l2 | update_fail | 1.3.0 | L'application s'est crashée ou n'a pas été appelée - le rollback a été déclenché notifyAppReady() intégré |
| 11:15:11 | i9j0k1l2 | reset | Le dispositif a été réinitialisé vers la version intégrée | Action nécessaire |
: Vérifiez que votre application appelle: Vérifiez que votre application appelle notifyAppReady() après l'initialisation réussie. Voir la documentation du plugin pour plus de détails.
Échec de téléchargement
Titre de la section “Échec de téléchargement”Lorsque des problèmes de réseau empêchent le téléchargement :
| Temps | ID de l'appareil | Action | Version | Ce que cela signifie |
|---|---|---|---|---|
| 09:45:00 | m3n4o5p6 | get | 1.2.0 | L'appareil a reçu des informations d'actualisation |
| 09:45:01 | m3n4o5p6 | download_30 | 1.2.0 | Le téléchargement a commencé mais… |
| 09:45:15 | m3n4o5p6 | download_fail | 1.2.0 | Échec du téléchargement (délai de connexion, etc.) |
Action nécessaire: La mise à jour se réessayera automatiquement à la prochaine mise à jour de l'application. Aucune action requise à moins que cela se produise fréquemment.
Limite du plan atteinte
Section intitulée « Limite du plan atteinte »Lorsque votre compte atteint sa limite de dispositif :
| Temps | ID du dispositif | Action | Version | Ce que cela signifie |
|---|---|---|---|---|
| 16:00:00 | q7r8s9t0 | needPlanUpgrade | - | Ce dispositif ne recevra pas les mises à jour jusqu'à ce que vous mettiez à niveau ou que le cycle de facturation se réinitialise |
Action nécessaire: Mettez à niveau votre plan ou attendez le prochain cycle de facturation.
Blocage des mises à jour de la configuration du canal
Sous-section intitulée “Blocage des mises à jour de la configuration du canal”Lorsque les paramètres du canal empêchent une mise à jour :
| Heure | ID du dispositif | Action | Version | Ce que cela signifie |
|---|---|---|---|---|
| 12:00:00 | u1v2w3x4 | disableAutoUpdateToMajor | 2.0.0 | Appareil sur v1.x ne peut pas se mettre à jour automatiquement vers v2.x (saut de version majeure bloqué) |
| 12:05:00 | y5z6a7b8 | disableEmulator | 1.2.0 | Un émulateur a été détecté, et le canal bloque les émulateurs |
| 12:10:00 | c9d0e1f2 | disableDevBuild | 1.2.0 | Une version de développement a été détectée, et le canal bloque les versions de développement |
Action nécessaire: Ces protections sont intentionnelles. Si vous souhaitez autoriser ces mises à jour, modifiez vos paramètres de canal.
Codes de journal (Capgo enum de backend)
Section intitulée « Codes de journal (Capgo enum de backend) »Ces codes proviennent de stats_action l'enum utilisé par le tableau de bord API (capgo/src/types/supabase.types.ts). Si vous voyez un nouveau code dans l'interface utilisateur, il a été émis par le SDK ou backend et validé contre cette liste.
Parcours heureux & cycle de vie
| Code(s) | Signification |
|---|---|
get | Le dispositif a demandé à Capgo le manifeste de canal actuel |
download_manifest_start, download_manifest_complete | Téléchargement du manifeste commencé / terminé (pour les delta ou les ensembles de fichiers multiples) |
download_zip_start, download_zip_complete | Téléchargement d'archive Zip commencé / terminé |
download_10 … download_90 | Milles de progression de téléchargement |
download_complete | Tout le bundle téléchargé |
set | Le bundle est prêt pour le lancement suivant |
reset | Le dispositif est revenu au bundle intégré |
delete | Le bundle a été supprimé de la mémoire cache |
uninstall | Détection de désinstallation d'application |
app_moved_to_foreground, app_moved_to_background | Événements de cycle de vie de l'application enregistrés par SDK |
ping | Vérification de l'état de santé/heartbeat du dispositif |
setChannel, getChannel | Canal surchargé ou récupéré via l'appel SDK |
Blocks de configuration ou de politique
| Code(s) | Pourquoi l'update a été bloqué |
|---|---|
disableAutoUpdate, disableAutoUpdateToMajor, disableAutoUpdateToMinor, disableAutoUpdateToPatch, disableAutoUpdateMetadata, disableAutoUpdateUnderNative | La stratégie du canal interdit cela Saut de version semver |
disablePlatformIos, disablePlatformAndroid | La plateforme est désactivée sur le canal |
disableDevBuild, disableEmulator | Les builds de développement ou les émulateurs ne sont pas autorisés |
cannotUpdateViaPrivateChannel, NoChannelOrOverride, channelMisconfigured | L'opération de sélection ou de surcharge du canal a échoué |
missingBundle, cannotGetBundle | Le manifeste se réfère à un bundle Capgo qui ne peut pas servir |
needPlanUpgrade | L'organisation a atteint ses limites de plan/dispositif |
rateLimited | Trop de requêtes; SDK bloque jusqu'à redémarrage |
blocked_by_server_url, backend_refusal, InvalidIp | La règle côté serveur a bloqué la requête |
Échecs de téléchargement / intégrité / installation
| Code(s) | Signification |
|---|---|
download_fail | Échec du téléchargement du bundle (erreur de réseau ou de réponse) |
download_manifest_file_fail, download_manifest_checksum_fail, download_manifest_brotli_fail | Le fichier de manifeste n'a pas pu être récupéré ou validé |
checksum_fail, checksum_required | La vérification de l'intégrité a échoué ou le checksum manque |
unzip_fail, directory_path_fail, canonical_path_fail, windows_path_fail | La validation du système de fichiers ou de dézipping a échoué |
decrypt_fail | La déchiffrement a échoué (bundle chiffré) |
update_fail | Le bundle a été installé mais l'application n'a jamais appelé notifyAppReady(); rollback déclenché |
download_zip_* sans suite set | Téléchargement terminé mais phase d'installation jamais terminée |
➡️ Besoin de conseils plus approfondis sur code ? Consultez Guide de référence et de débogage complet de Code.
Obtenir plus de détails sur un journal
Section intitulée « Obtenir plus de détails sur un journal »Si vous cliquez sur une entrée de journal spécifique, cela vous emmènera généralement à la page de l'appareil . Cela vous permet de voir l'ensemble de l'historique pour cet appareil en particulier, ce qui peut être très utile pour diagnostiquer des problèmes spécifiques à l'appareil ou comprendre son parcours de mise à jour.
Continuer depuis les journaux
Section intitulée « Continuer depuis les journaux »Si vous utilisez Logs pour planifier le tableau de bord et les opérations API, connectez-le avec API Vue d'ensemble pour les détails d'implémentation dans API Vue d'ensemble, Introduction pour les détails d'implémentation dans Introduction, API Clés pour les détails d'implémentation dans API Clés, Appareils pour les détails d'implémentation dans Appareils, et Ensembles pour les détails d'implémentation dans Ensembles.