Calculer le temps d'exécution d'un script sous linux

Calculer le temps d’exécution d’un script sous linux

Pour les besoins d’un test je voulais connaitre la durée d’exécution d’un script. J’avais déjà dans l’idée de monter une usine à gaz ou encore de réinventer un bout de script, mais grâce à Google j’ai trouvé l’utilitaire qu’il me fallait pour calculer le temps d’exécution d’un script. Pour découvrir d’autres commandes sous Linux, consulter ce tutoriel : Commandes d’administration sous Linux.

Calculer le temps d’exécution d’un script avec l’utilitaire time

Il peut s’avérer utile de connaître la durée d’exécution d’une tâche.

Calculer le temps d'exécution d'un script avec l'utilitaire time

Prenons un exemple simple avec Centreon, si votre script dure plus de 60 secondes (valeur par défaut), le service qui exécute votre script se met en défaut.

Bilan le script n’a pas fini son exécution et vous avez droit à beau CRITICAL sur votre dashboard avec un Service Check Time Out en sortie.

Gérer les scripts long sous Centreon

Astuce du Pro !!! Si vous voulez augmenter le délai d’exécution des scripts dans Centreon, vous devez aller dans Configuration -> Nagios -> Nagios.cfg. Sélectionner le fichier de configuration dans lequel vous voulez modifier le délai puis dans l’onglet Options des logs, augmenter le délai dans temps maximum d’exécution d’un contrôle ou d’un service

Gérer les scripts long sous Centreon

Après cet aparté dans la configuration de Centreon, la commande magique time permet de calculer le temps d’exécution d’un script et ainsi déterminer la durée d’un processus, elle utilise le temps d’horloge du système donc attention a réalisé le test sans lancer d’autre processus gourmand en temps processeur sous peine de voir ses résultats faussés.

commande linux time

Pour chronométrer une tâche on utilise la commande time suivi de la tâche ou d’un script. Par exemple pour lister tous les éléments d’un répertoire ls –l. A la fin de la tâche vous avez le temps mis par le système pour exécuter ce processus.

Prenons un exemple plus concret avec l’exécution d’un script Centreon par exemple qui va parser un fichier de log DHCP.

exemple d'utilisation de la commande time avec un script Perl

Analyser le résultat à la fin de l’exécution du script :

  • Real : correspond au temps réel de la tâche.
  • User : correspond au temps utilisateur, c’est à dire le temps CPU utilisé par le programme utilisateur.
  • Sys : correspond au temps système, c’est à dire au temps utilisé par le système pour gérer l’exécution de la tâche.

signature Guillaume

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *