Introduction
Dans ce défi, vous allez perfectionner le script de surveillance du système Linux fourni en lui ajoutant une fonction de journalisation. L'objectif est d'enregistrer l'utilisation des ressources (processeur, mémoire et disque) dans un fichier journal après chaque cycle de surveillance. Cette tâche mettra à l'épreuve votre capacité à modifier et à étendre un script shell pour y inclure une sortie vers un fichier.
Le script de base vous est fourni. Il vous incombe d'y intégrer la fonctionnalité de journalisation.
Ajouter la journalisation au moniteur système
Tâches
- Modifiez le script
/home/labex/project/system_monitor.shpour ajouter l'utilisation des ressources (processeur, mémoire et disque) à la fin d'un fichier journal nomméresource_usage.logsitué dans le même répertoire. Chaque entrée doit inclure la date et l'heure actuelles.
Exigences
- Le fichier journal doit impérativement s'appeler
resource_usage.loget se trouver dans/home/labex/project. - Chaque entrée du journal doit comporter la date, l'heure et les pourcentages d'utilisation des ressources pour le processeur (CPU), la mémoire et le disque.
- La journalisation doit être effectuée après le calcul des valeurs d'utilisation des ressources lors de chaque cycle de surveillance.
Conseils
- Utilisez la commande
datepour obtenir la date et l'heure actuelles, par exemple avecdate '+%Y-%m-%d %H:%M:%S'. Consultez la pageman datepour apprendre à formater la sortie. - N'oubliez pas d'utiliser l'opérateur
>>pour ajouter du contenu à la fin d'un fichier. Évitez d'écraser le fichier à chaque itération. - Regroupez les valeurs d'utilisation des ressources dans une seule chaîne de caractères avant de les ajouter au fichier journal. Utilisez des variables et l'interpolation de chaînes à cette fin.
- Assurez-vous que le fichier journal est écrit dans le même répertoire que le script, en utilisant un chemin absolu ou relatif tel que
/home/labex/project/resource_usage.log.
Exemples
Une fois la tâche terminée, l'exécution de /home/labex/project/system_monitor.sh pendant quelques secondes devrait générer un fichier resource_usage.log contenant des entrées similaires à celles-ci :
cat /home/labex/project/resource_usage.log
2024-12-04 14:00:01 CPU: 15% Memory: 45% Disk: 62%
2024-12-04 14:00:03 CPU: 18% Memory: 46% Disk: 62%
2024-12-04 14:00:05 CPU: 20% Memory: 47% Disk: 62%
Pour quitter le script proprement, vous pouvez appuyer sur Ctrl+C afin d'envoyer un signal d'interruption.

Résumé
Dans ce défi, vous avez ajouté une fonctionnalité de journalisation au script de surveillance du système Linux. Cette fonction enregistre l'utilisation des ressources dans un fichier journal, permettant ainsi aux utilisateurs de suivre la consommation des ressources au fil du temps. Cette tâche a permis de renforcer votre compréhension des opérations sur les fichiers et des commandes de date dans les scripts Bash.



