Affichage des journaux en direct dans Windows
Dans le monde du dépannage des applications, les journaux de l’application sont votre meilleur ami. Parfois, vous savez quand votre erreur se produit, mais parfois vous devez savoir, jusqu’au moment où l’erreur apparaît dans les fichiers journaux. En d’autres termes, vous souhaitez parfois afficher toutes les mises à jour du journal exactement comme elles se produisent. Si vous travaillez sous Windows et que vous vous trouvez dans cette position, voici un aperçu rapide de mes façons préférées de visualiser en direct les fichiers journaux.
J’utilise une instance de Sitecore pour ces exemples, mais ces méthodes fonctionnent pour afficher tous les journaux de texte, et pas seulement les journaux Sitecore.
Méthode 1: Windows PowerShell
Dans Windows PowerShell, la commande de base pour afficher en direct les mises à jour d’un fichier est:
Get-Content {MyFile} -Wait -Tail 30
Utilisation:
cd C:\inetpub\wwwroot\MySitecoreInstance\Data\logsGet-Content Log.20160706.txt -Wait -Tail 30
Dans le cas de Sitecore, et probablement de nombreuses autres solutions, le fichier le plus récemment modifié est le journal actif. Voici une commande que j’ai écrite pour obtenir automatiquement du contenu sur le fichier le plus récemment modifié (qui correspond au journal de Sitecore.*.modèle txt) dans le répertoire:
cd C:\inetpub\wwwroot\MySitecoreInstance\Data\logsgci -Filter log.*.txt | sort LastWriteTime | select -last 1 | Get-Content -Wait -Tail 30
Regarder Sitecore tourner à partir du journal…
L’avantage de cette méthode est sa disponibilité sur n’importe quel système sur lequel PowerShell est installé, et PowerShell est installé par défaut sur les systèmes exécutant Windows 7 et versions ultérieures. Un inconvénient mineur, lorsque j’ai exécuté cette commande sur les systèmes Win7, est un faible taux de rafraîchissement. Cela semble avoir été corrigé dans Win8 à partir de.
Méthode 2: Queue nue.exe
Nommé d’après la commande « tail » du monde Unix / Linux, Baretail est un exécutable libre, léger et autonome. Le seul travail de Baretail consiste à visualiser en direct les fichiers journaux, et il comporte également de belles fonctionnalités comme le codage couleur. Lorsque j’ai utilisé cette application, elle a très bien servi son objectif. L’inconvénient inhérent de Baretail est que certains systèmes vont être plus verrouillés (lire: serveurs de production), ce qui signifie ne pas fonctionner.fichiers exe que vous avez retirés d’Internet. C’est pourquoi la méthode 1 est plus courante pour moi; il y a beaucoup plus de chances que PowerShell soit sur un serveur. Il convient également de mentionner que Baretail n’a pas vu de nouvelle version publiée depuis 2006, mais l’application semble toujours compatible avec la dernière version de Windows 10.
J’ai dit à Baretail de mettre en surbrillance les lignes contenant « ERREUR ».
J’ai entendu le plugin Doc Monitor pour Notepad ++ mentionné comme une solution similaire à Baretail.exe mais je n’ai pas essayé ça moi-même. Je suppose que cela fera face à des inconvénients similaires: Cela ne sera utilisable que sur les systèmes où Notepad ++ est installé.
Méthode 3: La commande Tail
Cela va être un cas rare, mais je la lance pour la variété. Supposons que vous travailliez sur un système doté d’un sous-système Windows pour Linux *, Cygwin ou autre chose qui fournit un shell de type Unix dans Windows. Si vous faites partie de ce boîtier edge, vous disposez de la commande Tail, qui existe depuis des décennies et qui est très décente. Similaire à la commande PowerShell que j’ai écrite, l’utilisation de cette commande ** dans votre shell extraira le journal Sitecore actuel et le suivra:
tail -f `ls -t /mnt/c/inetpub/wwwroot/MySitecoreInstance/Data/logs/log.* | head -n1`
Tail s’exécutant sur le sous-système Windows pour Linux.
* Au 7/6/16, le sous-système Windows pour Linux est toujours en version bêta et disponible uniquement pour les utilisateurs de Windows 10 qui font partie du programme Windows Insider et qui ont activé les mises à jour rapides. Bien sûr, cela changera à l’avenir.
** En WSL, le lecteur C est mappé à /mnt/c/. Dans Cygwin, le lecteur C est mappé à /cygdrive/c/.
Mention honorable: Analyseur de journaux Sitecore
Pour vous développeurs Sitecore, je dois ajouter cela car c’est un outil si précieux et je vois tellement de développeurs Sitecore qui ne savent même pas qu’il existe: l’analyseur de journaux Sitecore (SCLA). Bien que cela ne vous permette pas d’afficher les fichiers journaux en direct, SCLA fournit une analyse détaillée des fichiers journaux, ce qui facilite le suivi des tendances d’erreur, des délais, etc. Je considère SCLA comme un outil essentiel pour le support Sitecore.
À propos de l’auteur
Jacob King est Consultant technique senior pour Perficient, spécialisé dans les solutions Sitecore. Il vit à Indianapolis avec sa femme et son fils.
Plus de cet auteur