Souvent, les solution de supervision, monitor l’uptime d’un serveur et déclanche une alerte lors d’un redémarrage non planifier de celui-ci. Il est ensuite nécessaire de diagnostiquer les raisons de ce redémarrage.
Vous trouverez ci-dessous quelques events Windows permettant de trouver l’explication.
Sommaire
Méthode de recherche des events.
Les events que nous allons recherchés pour diagnosiquer les raisons d’un reboot sont :
- 6006
- 6008
- 41
- 1074
Dans le journal “system” de la machine.
En Powershell
La récupération des événements Windows en utilisant Powershell peut soit être réalisé via une session local Powershell ou en se connectant à distance en Powershell sur la machine concernée. Pour se faire utiliser la commande :
Enter-PSSession [computername]
Une sois la session Powershell ouverte, la commande ci-dessous permet de lister les Event qui nous intéressent :
Get-EventLog -LogName System -After (Get-Date).AddDays(-1) -Before $(Get-Date) | Where-Object {($_.EventID -eq 1074) -or ($_.EventID -eq 41) -or ($_.EventID -eq 6006) -or ($_.EventID -eq 6008)} | Select-Object EventID,TimeGenerated,Message | FL
En GUI
En utilisant la console “eventvwr.msc” soit en étant connecté localement sur le serveur ou en mmc remote, nous allons filtrer le journal système afin d’afficher les events mentionnés ci-dessus.
Se rendre dans l’observateur d’événements, puis “Affichage personnalisés” et “Créer une vue personnalisée“.
La nouvelle vue personnalisée porte sur le journal “Système“, et le filtrage sur les événements :
- 6006
- 6008
- 41
- 1074
Le nouvelle vue est créée, et fournis la liste des événements Windows concernant le redémarrage du système.
Vous pouvez télécharger et importer la vue : ici.
Interprétation des events.
Maintenant que les events Windows autour du redémarrage du système sont listés, nous allons interpréter ces événements.
Dans les cas rencontrés, ceux-ci vont de paire :
Events 1074 et 6006 - Standard
Cette paire d’événements nous informent d’un redémarrage standard su système :
- 1074 : le redémarrage a été initiais par l’utilisateur XXX.
- 6006 : arrêt du service des logs.
Il s’agit d’un arrêt propre et standard du système.
Ci-dessous, l’event 1074 généré lors d’une demande de redémarrage via les VMWare tools. Dans ce cas si, nous pouvons bien identifier que l’ordre d’arrêt provient des VMWare tools et non de la commande “shutdown.exe”, ce log ne permet pas d’identifier qui a initier le reboot car le compte mentionné est celui qui execute le service VMWare tools. Dans ce cas ci, il est nécessaire de consulter le console du vCenter.
Dans le console du vCenter, la colonne initiator permet d’identifier qui à donner l’ordre de redémarrage.
Ci-dessous une petite liste des .exe rencontrés à l’origines de l’event 1074 (liste non exhaustive et les causes peuvent variées).
- C:\Windows\system32\shutdown.exe –> arrêt utilisateur.
- C:\Windows\system32\svchost.exe –> arrêt à l’initiative du système (généralement Windows update).
- C:\Windows\system32\vmtoolsd.exe –> arrêt depuis un vCenter ou ESXi (VMWate tools).
Events 6008 et 41 - Crash
Cette paire d’événements nous informent d’un redémarrage standard su système :
- 6008 : démarrage du service des logs Windows suite à un arrêt inattendu.
- 41 : événement créer spécifiant un crash system.
Il s’agit d’un arrêt brutal du système, les deux événements mentionnés ci-dessus sont créés lors du démarrage du système et non à l’arrêt lors de l’absence des événements dit d’arrêt standard. Le plus généralement lors d’un arrêt bouton ou power off dans le cas d’une VM ou lors d’une défaillance matériel.
D’autres event qui ne sont pas listés dans cette page peuvent être présent et compléter le diagnostique.