Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💻 sysmonitor

Un programme de monitoring du système.

👨‍💻 Auteur

Mathieu Gosselin

🚀 Installation

git https://github.com/Grindy/sysmonitor.git

🐳 Docker

Pour construire l'image, sur terminal bash, faire la commande: docker build -t sysmonitor:1.0

Pour lancer le conteneur, exécuter: docker run sysmonitor:1.0

📁 Structure du projet

sysmonitor/
├── .gitignore          # Liste les fichiers ignorés par git
├── monitor.py          # Script Python principal
├── data/
│   ├── config.ini      # Fichier de configuration
│   ├── services.csv    # Liste des services
│   └── access.log      # Fichier de logs
├── scripts/
│   ├── filter.sh       # Script grep (Partie 3)
│   ├── format.sh       # Script sed (Partie 3)
│   └── stats.sh        # Script awk (Partie 3)
├── output/
│   └── report.txt      # Rapport généré
├── Dockerfile
├── README.md
└── REPONSES.md         # Réponses aux questions et QCM

✨ Commandes

Execution avec un volume pour recuperer le rapport:

docker run -v $(pwd)/output:/app/output sysmonitor:1.0

Executer les scripts shell dans le conteneur:

stats.sh:

    docker run sysmonitor:1.0 bash scripts/stats.sh

filter.sh:

    docker run sysmonitor:1.0 bash scripts/filter.sh

format.sh:

    docker run sysmonitor:1.0 bash scripts/format.sh

📖 Fonctionnalités

lire_config():

Lit un fichier de configuration INI et retourne 
un dictionnaire imbriqué.

Args:
    chemin_fichier (str): Chemin vers le fichier .ini

Returns:
    dict: Dictionnaire avec sections et parametres

lire_services():

Lit un fichier CSV de services et retourne une liste de dictionnaires.

Args:
    chemin_fichier (str): Chemin vers le fichier .csv

Returns:
    list: Liste de dictionnaires avec les infos services

analyser_services():

Analyse la liste des services et retourne des statistiques.

Args:
    services (list): Liste de dictionnaires de services

Returns:
    dict: Statistiques calculees

generer_rapport():

Genere un rapport texte formate dans un fichier.

Args:
    config (dict): Configuration lue
    services (list): Liste des services
    stats (dict): Statistiques calculees
    chemin_sortie (str): Chemin du fichier de sortie

About

Projet sysmonitor pour l'examen 1 du cours de Systèmes d'exploitation du Collège de Maisonneuve

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages