TP N°8 : Automatiser de bout en bout le rapport de supervision

Sophie synthétise tout ce qui a été vu depuis la section 7 : « Tu as le script de supervision multi-serveurs. Tu sais planifier une tâche. Tu sais envoyer un email. Assemble tout ça en une seule chaîne complète, qui tourne seule, chaque jour, sans que personne n’ait à y penser. »

Objectif

Combiner le script de supervision du TP N°3 (section 7), la planification (8.1) et l’envoi d’email (8.2) en un seul script autonome, puis l’enregistrer comme tâche planifiée quotidienne.

Ce TP suppose un serveur SMTP interne accessible pour simplifier (via Send-MailMessage, en acceptant sa dépréciation pour ce seul exercice pédagogique), plutôt que Microsoft Graph, pour rester réalisable sans configuration Azure AD complète. Libre à vous d’adapter avec Microsoft.Graph.Mail si vous disposez déjà d’un tenant Microsoft 365 de test.

Consignes

Étape 1 — Rassemblez le script du TP N°3 (rapport multi-serveurs) dans un fichier unique rapport-supervision.ps1, qui écrit son résultat dans un fichier horodaté (rapport-AAAAMMJJ.txt) plutôt que de l’afficher à l’écran.
Indice : revoyez le TP de la section 7, et la leçon 4.2 pour l’écriture de fichier avec Set-Content ou Out-File.

Étape 2 — À la fin du même script, ajoutez l’envoi automatique de ce fichier par email, en pièce jointe.
Indice : revoyez la leçon 8.2.

Étape 3 — Entourez l’ensemble du script d’un try/catch global : si une étape échoue (script ou envoi d’email), envoyez un second email d’alerte simplifié, sans pièce jointe, signalant l’échec.
Indice : revoyez la leçon 5.5 sur la gestion des erreurs.

Étape 4 — Enregistrez ce script comme tâche planifiée quotidienne à 8h, sous un compte de service dédié (fictif pour l’exercice, par exemple NORDIKA\svc-supervision).
Indice : revoyez la leçon 8.1, les trois briques Action/Trigger/Principal.

Étape 5 (bonus) — Configurez la tâche pour qu’elle retente automatiquement 3 fois en cas d’échec, espacées de 5 minutes.

Solution commentée