
Un analyseur multiplateforme pour les journaux unifiés d'Apple !
Une bibliothèque Rust simple qui permet d'analyser les fichiers Unified Log de macOS.
Les journaux unifiés ont été introduits dans macOS version 10.12 (Sierra, 2016). Ils
s'inscrivent dans l'objectif d'Apple de créer un format de journal unifié pour tous
les produits Apple. Ils existent sur macOS, iOS, watchOS et tvOS. Les journaux
unifiés remplacent de nombreux anciens formats de journal utilisés par Apple.
Cette bibliothèque peut être utilisée pour analyser ces fichiers de journal.
Les données actuellement extraites comprennent :
Un binaire d'exemple est disponible en téléchargement
unifiedlog_iterator - Peut analyser une logarchive et l'exporter en fichier JSOL ou CSV. Il peut également analyser les journaux
d'un système en cours d'exécution. Le fichier de sortie sera assez volumineuxIl a été testé sur des millions d'entrées de journal. Cependant, en raison de la complexité du format Unified Log, certaines limitations subsistent :
Aucune prise en charge de la recherche de codes d'erreur de style printf. Cette bibliothèque n'effectue aucune recherche
de codes d'erreur pour les messages de journal. La commande log native de macOS prend en charge
la recherche de codes d'erreur lorsqu'elle rencontre des messages %m de style printf.
Par exemple, le message de journal : « Failed to open file, error: %m »
a. Cette bibliothèque renvoie :
Failed to open file, error: 1
b. La commande log de macOS renvoie :
Failed to open file, error: no such file or directory
Cette bibliothèque prend en charge la plupart des objets personnalisés dans les messages de journal. Cependant, les objets non pris en charge seront encodés en base64