Comment afficher le journal de la machine horaire dans MacOS Sierra?

40

Dans la version précédente d'OSX, je pouvais afficher les résultats des tâches de sauvegarde antérieures de Time Machine, notamment:

sudo syslog -F '$Time $Message' -k Sender com.apple.backupd

Maintenant, syslog ne fait plus partie du système d'exploitation. Il a été remplacé par " log ".

J'ai échoué à trouver des informations sur les tâches de la machine temporelle à l'aide de " journal ". J'ai également échoué en utilisant (la nouvelle version de) la console.

Aucune suggestion?

Arnstein
la source

Réponses:

54

macOS Sierra utilise la journalisation unifiée (mémoire et magasin de données; aucun fichier texte plus longtemps).

Cependant, avec l' log(1)utilitaire, vous pouvez afficher, filtrer, manipuler des journaux, etc. Voir man log, et voici quelques exemples spécifiques TimeMachine:

Diffuser le journal en direct (comme tail):

log stream --style syslog --predicate 'senderImagePath contains[cd] "TimeMachine"' --info

Ne pas diffuser, mais afficher la sortie de fin du journal:

log show --style syslog --predicate 'senderImagePath contains[cd] "TimeMachine"' --info

Chipster
la source
Bonjour Chipster, merci pour la réponse. Malheureusement, votre suggestion n'a pas fonctionné. J'ai appliqué la seconde de vos commandes (ne pas diffuser) et tout ce que je suis arrivé était: 22/09/2016 10: 25: 17,242554-0700 localhost eventsd [4378]: (TimeMachine) TimeMachineMonitor L' exécution de ce, après avoir fait deux machine à temps sauvegardes.
Arnstein
Bonjour à nouveau Chipster, Votre deuxième commande (Ne pas diffuser) fonctionne pour moi maintenant. Cependant, cette commande ne renvoie que des informations sur la dernière sauvegarde Time Machine que j'ai effectuée. Je suppose qu'après chaque redémarrage, toutes les informations de journalisation sont perdues. Pensez-vous que cela est vrai? Existe-t-il un moyen de rechercher des informations plus anciennes?
Arnstein
Arnstein, je suis également novice dans ce domaine, mais je crois comprendre que les messages de journalisation de niveau "Info" uniquement sont conservés en mémoire par défaut et ne survivront donc pas à un redémarrage. Si vous souhaitez que les messages TimeMachine Info soient enregistrés sur le disque, essayez de procéder log config --subsystem com.apple.TimeMachine --mode persist:infocomme suit : # (en tant que root).
Lennart L
29

J'avais un problème similaire. J'ai écrit ce script shell pour me montrer les 12 dernières heures d'activité de Time Machine à partir du journal, puis continuer à suivre le journal en direct.

je l'appelle tm-log

#!/bin/sh

filter='processImagePath contains "backupd" and subsystem beginswith "com.apple.TimeMachine"'

# show the last 12 hours
start="$(date -j -v-12H +'%Y-%m-%d %H:%M:%S')"

echo ""
echo "[History (from $start)]"
echo ""

log show --style syslog --info --start "$start" --predicate "$filter"

echo ""
echo "[Following]"
echo ""

log stream --style syslog --info --predicate "$filter"
Jim Randell
la source
5
logprend un --lastparamètre, ce qui peut être plus simple que l'informatique --start(par exemple, --last 12hpour afficher les 12 dernières heures)
Miles
10

Pour ceux qui recherchent une vue en direct des messages Time Machine dans l’application GUI Console, activez «Inclure les messages d’information» dans le menu Action.

Les messages d’état utiles de Time Machine s’affichent alors et peuvent être filtrés avec une recherche comme Category:TMLogInfo.

Il semble qu’il log(1)soit nécessaire d’afficher l’historique puisque la console n’affiche rien avant son ouverture.

gabedwrds
la source
Merci pour cela! J'ai également dû ajouter Category:TMLogErrorpour pouvoir voir les messages d'erreur;)
gsaslis
2

Actuellement, ma solution est d'utiliser log stream --style syslog --predicate 'subsystem == "com.apple.TimeMachine"' --info. Mais cela ne me satisfait pas vraiment, alors je cherche toujours un meilleur moyen.

Damien Clauzel
la source
0

Copiez et collez le texte suivant exactement comme ci-dessous

log show --predicate 'sous-système == "com.apple.TimeMachine"' --info | grep 'upd: (' | cut -c 1-19,140-999

PJ Mele
la source
0

En type "terminal" (ou copier à partir d'ici et coller):

log stream --style syslog  --predicate 'senderImagePath contains[cd] "TimeMachine"' --info

Cela fonctionne, mais comme il s'agit d'une diffusion en continu, il affiche l'activité en temps réel. S'il n'y a pas d'activité de machine à remonter le temps, elle ne s'affichera pas beaucoup (ou quoi que ce soit). Initialement, il est possible que des fichiers datés de quelques jours puissent être mis en cache quelque part, mais ensuite, le journal est affiché en temps réel.

J'ai utilisé ce flux du journal pour identifier un fichier corrompu spécifique sur mon disque qui empêchait l'achèvement des sauvegardes. Suppression du fichier (en fait un dossier complet) et de woilla - sauvegarde terminée lors de la première exécution. Pas plus d'erreurs.

Shahar
la source