J'essaie de déconnecter mon application via la journalisation unifiée (os_log).
Voici l'initialisation du journal:
var osLog : OSLog = OSLog(subsystem: "com.test.testapp", category: "native-tester")
Et voici comment je l'utilise:
os_log("iOS App initialized successfully!", log: osLog, type:.info)
Lorsque le débogage de l'application est normal, les journaux apparaissent correctement sur la sortie de la console, mais lorsque je regarde la console du périphérique (affichée dans la fenêtre "Périphériques et simulateurs"), je ne les vois pas du tout.
Cet article indique que vous devez configurer le système pour activer les journaux de débogage à l'aide de
Sudo log config --mode "level:debug" --subsystem com.test.testapp
Mais cela n'a pas semblé faire la différence. Je suppose que c'est parce que je configure le Mac pour afficher les journaux, pas l'iPad.
Comment afficher les journaux ipad/iphone de os_log dans la console du périphérique?
La fenêtre "Périphériques et simulateurs" affiche uniquement les rapports d'incident. Utilisez l'application Console ou le terminal, via la commande log --stream
, pour voir la sortie du journal en direct.
Pour voir les messages du journal en temps réel du périphérique via l'application Console, que ce soit à partir de Xcode ou directement à partir du périphérique:
.debug
, veillez à bien sélectionner Inclure les messages de débogage . (Sans ces éléments sélectionnés, la console affiche uniquement les messages de niveau .default
, .fault
et .error
.)Si vous ne voyez toujours pas les messages, essayez d'entrer cette commande Terminal pour configurer les niveaux de journalisation de votre application:
Sudo log config --subsystem com.test.testapp --mode level:debug
Ceci active la journalisation de niveau .debug
- pour le sous-système "com.test.testapp" (qui inclut les messages .info
et .default
).
Si vous souhaitez conserver les messages, plutôt que la valeur par défaut de mémoire uniquement, activez la persistance pour les trois niveaux en même temps, comme suit:
Sudo log config --subsystem com.test.testapp --mode level:debug,persist:debug
Quels que soient les paramètres du journal, seuls les rapports d'incident apparaîtront dans la fenêtre "Périphériques et simulateurs".
Les journaux de type .debug et .info sont par défaut uniquement de la mémoire (ils ne sont pas enregistrés sur le disque). Ils ne seront donc pas visibles sur la console du périphérique.
Informations détaillées: https://developer.Apple.com/documentation/os/logging?language=objc
Voici aussi la jolie WWDC: https://developer.Apple.com/videos/play/wwdc2016/721/
Autre écueil: si vous avez défini OS_ACTIVITY_MODE
sur disable
dans votre schéma, vous ne verrez aucun journal pour votre application dans la console.
Vous devez supprimer ou décocher cet argument.