[PERL] Librairies de monitoring unix?

Librairies de monitoring unix? [PERL] - Perl - Programmation

Marsh Posté le 12-01-2004 à 23:22:02    

jai chercher sur cpan et jvois rien de trop concret
 
le genre de librairie qui me permettrait de vérifier ce genre de truc
 
utilisation cpu
utilisation mémoire
process vivant ou non
swap utilisé
utilisation des disques
utilisation cpu et mémoire d'un process
 
on a présentement un scrit en rexx qui fait ca, mais c'est tout à partir de shell cmd, donc c'est quand même lent à rouler, et je me suis dit que de jetter un coup d'oeil coté perl ca pourrait etre bien


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 12-01-2004 à 23:22:02   

Reply

Marsh Posté le 14-01-2004 à 01:21:17    

Reply

Marsh Posté le 14-01-2004 à 09:06:20    

libgtop-bindings du projet GNOME

Reply

Marsh Posté le 14-01-2004 à 11:39:28    

Taz a écrit :

libgtop-bindings du projet GNOME


 
 :??:  
 
et comment j'utilise ca en perl sur une machine aix dépourvu de gnome  :whistle:


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 14-01-2004 à 12:56:50    

bah ça je sais pas. le projet GNOME c'est loin d'être que le desktop. vas sur le cvs/ftp et ramasse ce qui s'appelle libgtop et libgtop-bindings

Reply

Marsh Posté le 14-01-2004 à 14:52:06    

Regarde sur Cpan!
search.cpan.org  
 
tu devrais pouvoir tourver ton bonheur la dedans:
http://search.cpan.org/modlist/Ope [...] Interfaces
(regarde les sous catégories en haut, linux, unix, etc...)
 
notament:
http://search.cpan.org/~mzsanford/Sys-CPU-0.40/CPU.pm
http://search.cpan.org/~ckerner/Li [...] MemInfo.pm
http://search.cpan.org/~ckerner/Linux-LVM-0.13/LVM.pm
http://search.cpan.org/~jstowe/Lin [...] Cpuinfo.pm
http://search.cpan.org/~cjohnston/ [...] temInfo.pm
...
 
search.cpan.org !!!! c'est le google de perl!


Message édité par pospos le 14-01-2004 à 14:52:27
Reply

Marsh Posté le 14-01-2004 à 22:43:12    

pospos: merci, j'avais pourtant regarder mais pas trouver grand chose
 
quand c'est linux, selon toi ca fonctionnera sur AIX?
 
et j'imagine que c'est pas inclus dans une compilation/installation normal de perl sous unix


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 14-01-2004 à 22:56:16    

et jviens de regarder, outre le LVM et le meminfo, les 2 autres me serve a rien
 
en gros me manque entre autre un équivalent de la commande ps sous unix, et aussi de la charge cpu(%idle, %use) et non la fréquence et le type de cpu


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 14-01-2004 à 23:36:29    

rien ne t'empeche de lancer une commande system genre avec les backquotes:
 
my $pid = $$;
my $size = `ps -o rss= -p $pid`

Reply

Marsh Posté le 14-01-2004 à 23:39:20    

ouais je sais, mais moi croyais que c'était toujours mieux d'utilisé les lib propre à perl que les commandes shell
 
on a déjà un script de monitoring, en rexx, qui fait le boulot, mais toutes les infos sont rassemblé avec des commandes shell et le script est pas vachement rapide (ca tourne au 15min, et c'est pas loin de 1min d'exécution).
 
J'vais devoir lui faire un tas de modif bientot et je me disais que jpourrais toujours regardé voir si ca serait pas mieux de le refaire en entier en perl


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 14-01-2004 à 23:39:20   

Reply

Marsh Posté le 14-01-2004 à 23:58:51    

de toute facon ta lib sera specifique à une plateforme. d'ailleurs beaucoup de lib utilisent des commandes systemes ou du shell
 
perl est au depart un langage de script, fait pour utilisé les commandes du shell, donc ya pas de prob
 
si tu veux une lib et bien tu peux te faire un module que tu réutilise dans te scripts, et meme qui soit compatible Win32:
 
if ($^O eq 'MSWin32') {
  my $procinfo = (Win32::Process::Info->new)->GetProcInfo($pid);
  my $size = $procinfo->[0]->{WorkingSetSize}/1024;
} else {
  my $size = `ps -o rss= -p $pid`;
}
[/cpp]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed