Utiliser Intune et PowerShell pour détecter les appareils avec des BSOD récents et uploader les logs sur un SharePoint de manière automatisée

Dans cet article nous verrons un script de remédiation Intune (Proactive Remediation) permettant de détecter les appareils qui ont récemment eu un BSOD, collecter les logs BSOD puis les envoyer automatiquement sur un SharePoint pour analyse par le support.

Contexte

Certains appareils ont des BSOD (écran bleu)

  • Vous souhaitez collecter les logs pour analyse
  • Vous souhaitez les uploader quelque part
  • Vous souhaitez un moyen automatisé
  • Vous souhaitez les uploader sur Teams/SharePoint pour le help desk

La solution

J’ai crée pour cela deux scripts :

  • BSOD_Detection.ps1
  • BSOD_Remediation.ps1

Le script détection

  1. Le script va vérifier dans C:\Windows\Minidum si des .DMP existent
  2. Si oui, il va vérifier si la date du DMP est inférieure à un certain délai (15 jours)
  3. Si plusieurs DMP, il va vérifier la date du dernier
  4. Si inférieure à 15 jours alors alerte puis exécution du script de remédiation

Vous pouvez changer le délai en changeant la variable : $Delay_alert

Script de remédiation

  1. Installation du module pnp.powershell si non présent
  2. Création d’un dossier pour les logs: C:\Windows\Temp\DMP_Logs_folder
  3. Copie du contenu de C:\Windows\Minidump dans le dossier
  4. Copie du fichier C:\WINDOWS\MEMORY.DMP dans le dossier
  5. ZIP du dossier C:\Windows\Temp\DMP_Logs_folder
  6. Upload du ZIP sur SharePoint

Obtenir le script

Cliquez sur l’image ci-dessous:

PréRequis SharePoint

Pour uploader les logs sur SharePoint nous aurons besoin de:

  • Créer un SharePoint/Team dédié pour le support
  • Créer une application SharePoint pour l’accès

Vous pouvez trouver tout cela sur ce lien.

Création du package de remédiation

  1. Allez dans Microsoft Endpoint manager admin center
  2. Allez dans Reports
  3. Allez dans Endpoint analytics
  4. Allez dans Proactive remediations
  5. Cliquez sur Create script package
  6. Saisissez un nom
  7. Cliquez sur Next
  8. Cliquez sur Detection script file
  9. Choisissez BSOD_Detection.ps1
  10. Cliquez sur Remediation script file
  11. Choisissez BSOD_Remediation.ps1
  12. Cliquez sur Next
  13. Choisissez le groupe approprié
  14. Choisissez quand s’exécutera le package
  15. Cliquez sur Apply
  16. Cliquez sur Next
  17. Cliquez sur Create

A propos de l'auteur

Consultant Modern Workplace travaillant principalement sur ce qui tourne autour du poste de travail (MDT, SCCM, Intune, Graph...) et l’automatisation avec PowerShell. MVP Microsoft (depuis 5ans) et auteur pour ENI, il publie régulièrement sur son blog et gère différents groupes Facebook, PowerShell et WPF (~9000 membres), Windows Autopilot (~6900membres).

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.