ANAVEM
Languageen
Windows Services management console displaying service status monitoring on server room dashboard
Event ID 7031ErrorService Control ManagerWindows

ID d'événement Windows 7031 – Gestionnaire de contrôle des services : Service terminé de manière inattendue

L'ID d'événement 7031 indique qu'un service Windows s'est terminé de manière inattendue et sera redémarré par le Gestionnaire de contrôle des services. Cet événement critique aide à identifier les problèmes de stabilité du service et les problèmes potentiels du système.

Emanuel DE ALMEIDAEmanuel DE ALMEIDA
18 mars 202612 min de lecture 0
Event ID 7031Service Control Manager 5 méthodes 12 min
Référence événement

Signification de cet événement

L'ID d'événement 7031 représente l'un des événements les plus importants liés aux services dans la journalisation des événements Windows. Lorsqu'un processus de service se termine de manière inattendue, le Gestionnaire de contrôle des services génère cet événement pour documenter l'échec et initier des procédures de récupération. L'événement contient des informations cruciales, y compris le nom du service, l'identifiant du processus, le code de sortie et l'action de récupération spécifique entreprise.

Le Gestionnaire de contrôle des services surveille en continu tous les services Windows. Lorsqu'un processus de service se termine sans envoyer une notification d'arrêt appropriée, le SCM reconnaît cela comme une terminaison inattendue. Cela peut se produire en raison de plantages d'applications, de violations d'accès, de corruption de mémoire, d'épuisement des ressources ou de la terminaison d'un processus externe. Le SCM consulte alors la configuration de récupération du service pour déterminer la réponse appropriée, qui peut inclure le redémarrage du service, l'exécution d'un programme de récupération ou le redémarrage du système.

Cet événement est particulièrement significatif car les services sont fondamentaux pour le fonctionnement de Windows. Les services système critiques comme Windows Audio, Client DHCP ou Client DNS échouant de manière inattendue peuvent gravement affecter la fonctionnalité du système. Les services tiers provenant de logiciels antivirus, d'applications de sauvegarde ou de systèmes de bases de données peuvent également générer cet événement, indiquant des problèmes potentiels de compatibilité ou des conflits de ressources.

Les données de l'événement incluent des codes de sortie spécifiques qui aident à identifier la cause première. Les codes de sortie courants incluent les violations d'accès (0xC0000005), le débordement de pile (0xC00000FD) ou les codes d'erreur spécifiques à l'application. Les administrateurs utilisent ces informations pour résoudre les problèmes de fiabilité des services et mettre en œuvre des mesures préventives.

S'applique à

Windows 10Windows 11Windows Server 2019/2022/2025
Analyse

Causes possibles

  • Les applications de service se plantent en raison d'exceptions non gérées ou de violations d'accès
  • Corruption de mémoire ou conditions de débordement de tampon dans le processus de service
  • Épuisement des ressources, y compris mémoire insuffisante, poignées ou espace disque
  • Conflits de logiciels tiers ou pilotes incompatibles affectant le fonctionnement du service
  • Logiciels malveillants ou de sécurité terminant les processus de service
  • Problèmes matériels tels que RAM défaillante ou dispositifs de stockage causant une instabilité du processus
  • Dépendances de service échouant ou devenant indisponibles
  • Erreurs de configuration dans les paramètres de service ou les paramètres du registre
  • Mises à jour ou correctifs Windows causant des problèmes de compatibilité de service
  • Utilisateur ou administrateur terminant manuellement les processus de service via le Gestionnaire des tâches
Méthodes de résolution

Étapes de dépannage

01

Identifier et analyser le service défaillant

Commencez par examiner le service spécifique qui a échoué et recueillir des informations détaillées sur l'échec.

  1. Ouvrez Observateur d'événements en appuyant sur Win + R, en tapant eventvwr.msc, et en appuyant sur Entrée.
  2. Accédez à Journaux WindowsSystème et filtrez pour l'ID d'événement 7031.
  3. Double-cliquez sur l'entrée la plus récente de l'ID d'événement 7031 pour voir les détails, y compris le nom du service et le code de sortie.
  4. Utilisez PowerShell pour interroger les échecs de service récents :
    Get-WinEvent -FilterHashtable @{LogName='System'; Id=7031} -MaxEvents 20 | Select-Object TimeCreated, Id, LevelDisplayName, Message | Format-Table -Wrap
  5. Vérifiez l'état actuel du service affecté :
    Get-Service -Name "ServiceName" | Select-Object Name, Status, StartType
  6. Examinez les paramètres de récupération du service :
    sc.exe qfailure "ServiceName"
Astuce pro : Notez l'heure exacte de l'échec et corrélez-la avec d'autres événements système se produisant au même moment pour identifier les déclencheurs potentiels.
02

Vérifier les dépendances et la configuration du service

Enquêter sur les dépendances de service et les problèmes de configuration qui pourraient causer une terminaison inattendue.

  1. Ouvrez la console Services en exécutant services.msc.
  2. Localisez le service défaillant et faites un clic droit → Propriétés.
  3. Vérifiez l'onglet Dépendances pour identifier les services requis et vérifiez qu'ils sont en cours d'exécution.
  4. Utilisez PowerShell pour examiner les dépendances de service :
    Get-Service -Name "ServiceName" -DependentServices
    Get-Service -Name "ServiceName" -RequiredServices
  5. Vérifiez les autorisations et la configuration du compte de service :
    Get-WmiObject -Class Win32_Service -Filter "Name='ServiceName'" | Select-Object Name, StartName, StartMode, State
  6. Vérifiez le chemin d'exécution du service et les paramètres dans le registre :
    Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\ServiceName" -Name ImagePath
  7. Examinez le journal des événements d'application pour les erreurs liées à l'exécutable du service.
Avertissement : Ne modifiez pas les configurations de service sans comprendre l'impact, car cela peut causer une instabilité du système.
03

Analyser les ressources et la performance du système

Enquêter sur les contraintes de ressources système qui pourraient causer des pannes de service.

  1. Vérifier l'utilisation de la mémoire système et les ressources disponibles :
    Get-Counter "\Memory\Available MBytes", "\Memory\Committed Bytes", "\Process(_Total)\Handle Count" -SampleInterval 1 -MaxSamples 5
  2. Surveiller l'espace disque sur les lecteurs système :
    Get-WmiObject -Class Win32_LogicalDisk | Select-Object DeviceID, @{Name="Size(GB)";Expression={[math]::Round($_.Size/1GB,2)}}, @{Name="FreeSpace(GB)";Expression={[math]::Round($_.FreeSpace/1GB,2)}}
  3. Examiner les journaux de Windows Error Reporting pour les vidages sur incident :
    Get-ChildItem -Path "C:\ProgramData\Microsoft\Windows\WER\ReportQueue" -Recurse | Where-Object {$_.Name -like "*ServiceName*"}
  4. Vérifier les fuites de mémoire en surveillant l'utilisation de la mémoire des processus au fil du temps.
  5. Utiliser le Moniteur de ressources (resmon.exe) pour identifier les goulets d'étranglement des ressources pendant le fonctionnement du service.
  6. Examiner le journal des événements système pour les erreurs liées au matériel qui pourraient affecter la stabilité du service.
Astuce pro : Configurez des compteurs du Moniteur de performances pour suivre les métriques spécifiques au service et identifier les schémas avant que les pannes ne se produisent.
04

Configurer la récupération et la surveillance des services

Implémentez des paramètres de récupération de service appropriés et une surveillance pour gérer les pannes futures avec élégance.

  1. Configurez les options de récupération de service à l'aide de la console Services ou de la ligne de commande :
    # Configurer le service pour redémarrer en cas d'échec
    sc.exe failure "ServiceName" reset= 86400 actions= restart/60000/restart/60000/restart/60000
  2. Activez la journalisation des échecs de service avec des informations détaillées :
    sc.exe failureflag "ServiceName" 1
  3. Configurez des programmes de récupération personnalisés si nécessaire :
    sc.exe failure "ServiceName" reset= 86400 actions= restart/60000/run/60000/restart/60000 command= "C:\Scripts\ServiceRecovery.bat"
  4. Créez un script PowerShell pour surveiller l'état du service et envoyer des alertes :
    $serviceName = "ServiceName"
    $service = Get-Service -Name $serviceName
    if ($service.Status -ne "Running") {
        # Envoyer une alerte ou redémarrer le service
        Start-Service -Name $serviceName
        Write-EventLog -LogName Application -Source "ServiceMonitor" -EventId 1001 -Message "Service $serviceName was restarted"
    }
  5. Planifiez le script de surveillance à l'aide du Planificateur de tâches pour s'exécuter toutes les 5 minutes.
  6. Configurez le transfert d'événements Windows pour centraliser les événements de défaillance de service de plusieurs serveurs.
05

Dépannage avancé avec des dumps de processus et débogage

Effectuer une analyse avancée à l'aide de dumps de processus et d'outils de débogage pour les pannes de service persistantes.

  1. Configurer Windows Error Reporting pour créer des dumps complets pour les plantages de service :
    New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps" -Name DumpType -Value 2 -PropertyType DWord -Force
  2. Utiliser ProcDump pour capturer des dumps lorsque les services échouent :
    # Télécharger ProcDump depuis Microsoft Sysinternals
    procdump.exe -ma -e 1 -f "" -x C:\Dumps ServiceName.exe
  3. Activer la journalisation spécifique au service si disponible via le registre ou les fichiers de configuration.
  4. Utiliser Process Monitor (ProcMon) pour tracer l'accès aux fichiers, au registre et au réseau lors du démarrage et du fonctionnement du service.
  5. Analyser les dumps de crash à l'aide de WinDbg ou Visual Studio :
    # Charger le dump dans WinDbg et exécuter une analyse de base
    !analyze -v
    !peb
    k
  6. Vérifier les problèmes connus avec la version spécifique du service et appliquer les correctifs ou mises à jour disponibles.
  7. Envisager d'exécuter le service dans un environnement de test avec un débogage supplémentaire activé pour isoler la cause racine.
Avertissement : Les dumps de processus peuvent contenir des informations sensibles. Manipulez-les de manière sécurisée et suivez les politiques de protection des données de votre organisation.

Aperçu

L'ID d'événement 7031 se déclenche lorsque le Gestionnaire de contrôle des services (SCM) détecte qu'un service Windows s'est terminé de manière inattendue. Cet événement de niveau erreur se produit lorsqu'un processus de service plante, se bloque ou se termine sans notifier correctement le SCM. L'événement inclut généralement des détails sur le service qui a échoué, le code de sortie et l'action de récupération entreprise.

Cet événement est critique pour les administrateurs système car il indique une instabilité du service qui pourrait affecter la fonctionnalité du système. Le SCM tente automatiquement de redémarrer le service échoué en fonction de la configuration de récupération du service. Les services courants qui génèrent cet événement incluent Windows Update, BITS, le Spouleur d'impression et les applications tierces fonctionnant en tant que services.

L'événement apparaît dans le journal Système et fournit des informations de diagnostic précieuses, y compris le nom du service, l'ID de processus et la raison de l'échec. Comprendre cet événement aide les administrateurs à identifier les échecs de service récurrents, les fuites de mémoire potentielles, les problèmes de configuration ou les problèmes sous-jacents du système qui nécessitent une attention immédiate.

Questions Fréquentes

Que signifie l'ID d'événement 7031 et pourquoi est-il important ?+
L'ID d'événement 7031 indique qu'un service Windows s'est terminé de manière inattendue et que le Gestionnaire de contrôle des services prend des mesures de récupération. Cela est important car cela signale une instabilité du service qui pourrait affecter la fonctionnalité du système. L'événement aide les administrateurs à identifier les services défaillants, à comprendre les schémas de défaillance et à mettre en œuvre des mesures de récupération appropriées. Les services sont des composants critiques de Windows, et des terminaisons inattendues peuvent affecter tout, de la connectivité réseau aux fonctionnalités de sécurité.
Comment puis-je empêcher les services de générer de manière répétée l'ID d'événement 7031 ?+
Pour prévenir les événements récurrents d'ID d'événement 7031, identifiez d'abord la cause profonde par l'analyse des journaux et la surveillance des ressources. Les stratégies de prévention courantes incluent : s'assurer que les ressources système sont adéquates (mémoire, espace disque), mettre à jour les applications de service et les dépendances, configurer correctement les comptes de service avec les autorisations appropriées, mettre en œuvre des calendriers de maintenance réguliers, surveiller les fuites de mémoire et résoudre tout problème matériel sous-jacent. De plus, configurez des paramètres de récupération de service appropriés et mettez en œuvre une surveillance proactive pour détecter les problèmes avant qu'ils ne causent des défaillances.
Quelle information l'ID d'événement 7031 fournit-il pour le dépannage ?+
L'ID d'événement 7031 fournit plusieurs éléments clés d'informations de dépannage : le nom du service défaillant, l'ID de processus (PID) du processus terminé, le code de sortie indiquant la raison de la terminaison, l'action de récupération entreprise par le Gestionnaire de contrôle des services, et l'horodatage de la défaillance. Le code de sortie est particulièrement précieux car il peut indiquer des types spécifiques de défaillances comme les violations d'accès (0xC0000005), le débordement de pile (0xC00000FD), ou les erreurs spécifiques à l'application. Ces informations aident les administrateurs à corréler les défaillances avec d'autres événements système et à identifier des schémas.
Devrais-je m'inquiéter des événements occasionnels d'ID d'événement 7031 ?+
Les événements occasionnels d'ID d'événement 7031 peuvent ne pas être une source de préoccupation immédiate, surtout si le service se rétablit avec succès et que le système reste stable. Cependant, vous devriez enquêter si : le même service échoue de manière répétée, des services système critiques sont affectés, les échecs coïncident avec des problèmes de performance du système, ou les événements se produisent lors d'opérations importantes. Même des échecs occasionnels peuvent indiquer des problèmes sous-jacents tels que des fuites de mémoire, des contraintes de ressources ou des problèmes de compatibilité qui peuvent s'aggraver avec le temps. Il est préférable de surveiller les tendances et d'enquêter sur tout service qui échoue plus d'une fois par semaine.
Comment configurer les paramètres de récupération de service pour gérer les échecs de l'ID d'événement 7031 ?+
Configurez les paramètres de récupération du service via la console Services ou la ligne de commande. Dans Services.msc, faites un clic droit sur le service, sélectionnez Propriétés, et allez à l'onglet Récupération. Réglez les échecs premier, deuxième et suivants sur 'Redémarrer le service' avec des délais appropriés (généralement 1-2 minutes). Pour la configuration en ligne de commande, utilisez : 'sc.exe failure ServiceName reset=86400 actions=restart/60000/restart/60000/restart/60000'. Cela configure le service pour redémarrer après 60 secondes pour les trois premiers échecs, avec une période de réinitialisation de 24 heures. Vous pouvez également configurer le service pour exécuter un programme de récupération ou redémarrer l'ordinateur pour les services critiques. Testez toujours les paramètres de récupération dans un environnement non-production d'abord.
Documentation

Références (2)

Emanuel DE ALMEIDA
Écrit par

Emanuel DE ALMEIDA

Senior IT Journalist & Cloud Architect

Microsoft MCSA-certified Cloud Architect | Fortinet-focused. I modernize cloud, hybrid & on-prem infrastructure for reliability, security, performance and cost control - sharing field-tested ops & troubleshooting.

Événements Windows associés

Windows Services management console and Event Viewer displaying service monitoring information on server room monitors
Event 7023
Service Control Manager
Windows EventError

ID d'événement Windows 7023 – Gestionnaire de contrôle des services : Service terminé avec erreur

L'ID d'événement 7023 indique qu'un service Windows s'est terminé de manière inattendue avec un code d'erreur. Cet événement critique nécessite une enquête immédiate pour identifier les services défaillants et prévenir l'instabilité du système.

18 mars12 min
Windows Services management console displaying service status and error indicators on server monitoring dashboard
Event 7023
Service Control Manager
Windows EventError

ID d'événement Windows 7023 – Gestionnaire de contrôle des services : Service terminé avec erreur

L'ID d'événement 7023 indique qu'un service Windows s'est terminé de manière inattendue avec un code d'erreur. Cet événement critique nécessite une enquête immédiate pour identifier les services défaillants et prévenir l'instabilité du système.

18 mars12 min
Windows Services console and Event Viewer displaying service monitoring and system event logs
Event 7031
Service Control Manager
Windows EventError

ID d'événement Windows 7031 – Gestionnaire de contrôle des services : Service terminé de manière inattendue

L'ID d'événement 7031 indique qu'un service Windows s'est terminé de manière inattendue et sera redémarré. Cet événement critique aide à identifier les problèmes de stabilité du service et les problèmes potentiels du système.

18 mars12 min
Windows Services management console displayed on professional monitoring setup in server control room
Event 7000
Service Control Manager
Windows EventError

ID d'événement Windows 7000 – Gestionnaire de contrôle des services : Échec du démarrage du service

L'ID d'événement 7000 indique qu'un service Windows n'a pas pu démarrer lors du démarrage du système ou des tentatives de démarrage manuel. Cette erreur critique nécessite une enquête immédiate pour identifier le service défaillant et la cause sous-jacente.

18 mars12 min

Discussion

Partagez vos réflexions et analyses

Vous devez être connecté pour commenter.

Chargement des commentaires...