16 votes

Observation de ce que le mdworker de Spotlight indexe à des fins de diagnostic.

Des personnes ont signalé que les processus mdworker prenaient beaucoup de temps CPU sur les anciennes machines, mais à part de vagues suggestions pour recréer l'index Spotlight entier, je n'ai pas pu trouver d'informations de diagnostic.

Ma machine (moderne) n'a aucun problème de performance, je voudrais simplement comprendre la raison des messages "Service exited due to SIGKILL" qui inondent mes journaux système :

com.apple.xpc.launchd[1] (com.apple.mdworker.shared.00000000-0300-0000-0000-000000000000[6763]): Service exited due to SIGKILL | sent by mds[141]

Existe-t-il des journaux que je pourrais utiliser pour savoir ce qui ne va pas, c'est-à-dire si les processus d'indexation sont bloqués sur un certain fichier ? Existe-t-il un moyen d'augmenter la verbosité des messages ?

Un peu d'information sur le système : Cela se passe sur un iMac exécutant Catalina (10.15.6), avec seulement quelques centaines de Go de fichiers. À des fins de test, j'ai limité les catégories Spotlight (via les paramètres système) aux seules applications et contacts, mais cela ne semble pas faire de différence. La machine n'a pas de répertoires où les fichiers pourraient changer constamment, pas de répertoires avec un nombre excessif de fichiers et, pour autant que je sache, pas de formats de fichiers totalement inhabituels.

2 votes

Discussions.apple.com est littéralement plein de fils de discussion avec la même erreur : * system.log est plein de messages répétés après la mise à jour vers 10.15.5 * Service Exited" continu dans le journal du système * Panique fréquente du noyau Je parie que seuls ceux qui ne regardent jamais la console n'ont pas signalé la même erreur. Apple n'en a rien à faire.

3 votes

Voir mon commentaire à l'adresse suivante forums.macrumors.com/threads/ . Il y a un bogue qui fait que le processus mdworker_shared se bloque. Ce qui amène le processus mds à le terminer via un signal SIGKILL. Cela signifie que le processus mdworker_shared ne peut pas supprimer le répertoire de cache temporaire qu'il a créé.

9voto

Robert Wilkinson Points 570

Je ne suis pas sûr qu'il y ait un journal plus détaillé généré par mdworker o mds eux-mêmes. Vous pouvez utiliser fs_usage Pour voir les fichiers qu'ils lisent, exécutez la commande suivante dans un terminal :

sudo fs_usage mdworker mds

Comme il est dit dans le man page : "Le fs_usage présente un affichage continu des informations sur l'utilisation des appels système concernant l'activité du système de fichiers. Il requiert les privilèges Root en raison de la fonction de traçage du noyau qu'il utilise pour fonctionner. Par défaut, l'activité surveillée inclut tous les processus système sauf [ ]. Ces valeurs par défaut peuvent être remplacées de telle sorte que la sortie est limitée pour inclure ou exclure une liste de processus spécifiés par l'utilisateur."

Voici un petit échantillon de la sortie que vous obtiendrez (j'ai exécuté ceci dans une fenêtre étroite, utilisez une fenêtre plus large pour obtenir les chemins de fichiers plus en détail) :

11:07:49  fsgetpath         resourceLog.plist    0.000029   mds         
11:07:49  getattrlist       resourceLog.plist    0.000089   mds         
11:07:49  listxattr         resourceLog.plist    0.000042   mds         
11:07:49  getattrlist       resourceLog.plist    0.000164   mds         
11:07:49  getattrlist       resourceLog.plist    0.000029   mds         
11:07:54  exit                                   0.000118   mdworker    

El exit correspondent aux messages "Service exited due to signal" dans le "system.log" :

Aug  8 11:07:54 […] com.apple.xpc.launchd[1] (com.apple.mdworker.single.[…]):
  Service exited due to signal: Killed: 9 sent by mds[114]

Pour de plus amples informations sur fs_usage il y a un (vieil) article sur 'macobserver.com' intitulé "Mac OS X : Utilisation de fs_usage comme outil de dépannage " .

0 votes

Ce n'est que maintenant que j'ai trouvé le temps de revenir sur cette question. Je vais marquer votre réponse comme acceptée car elle m'a aidé à diagnostiquer ce que faisait mdworker, mais en fin de compte, j'ai compris où le crawler rencontrait des problèmes mais je n'ai pas pu trouver de solution raisonnable et j'ai simplement désactivé et réactivé toutes les catégories d'indexation...

0 votes

Ok, désolé d'entendre que cela n'a pas directement mené à une résolution, mais merci de l'avoir accepté !

1 votes

Merci beaucoup pour cela. J'ai supprimé quelques émulateurs Watch OS qui étaient accédés toutes les secondes et mdworker s'est enfin calmé pour une fois. Ma pauvre console peut enfin se reposer. Cela fait des mois.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X