[ uptime ] concours

concours [ uptime ] - Linux et OS Alternatifs

Marsh Posté le 16-11-2001 à 20:56:10    

a propos d'uptime , un pti concours ? ;)    
   
j'ai pondu un chti bout de code pour generer un .png d'un uptime toutes les minutes : la tricherie est aisée mais pour le fun (et les honnetes :D ) , je suggere un topic uptime ou chacun precisera la conf du serveur en question (noyau , serveurs installés etc ...)    
   
vous aurez besoin de la lib gd et satellites :    
   
gcc -Wall -O2 -lgd -lpng -lz -lm -o myuptime myuptime.c  
   
myuptime.c  
   
#include <stdio.h>  
#include <stdlib.h>  
#include <gd.h>  
#include <gdfontt.h>  
#include <gdfonts.h>  
#include <gdfontmb.h>  
#include <string.h>  
#include <unistd.h>  
#include <math.h>  
   
   
// --------------------------------------  
void sys_uptime(char* up)  
 {  
   FILE* f;  
   int j=0,h=0,heure=0;  
   int m=0;  
   char buf[128];  
   char* uptime=NULL;  
   
   if ( (f = fopen("/proc/uptime","r" )) != NULL)  
      if (fread(buf,1,sizeof(buf),f)) {  
         uptime = strtok(buf," " );  
         m = atoi(uptime) / 60;  
         if (m >0 )  
            h = m / 60;  
         if (h > 0)  
            j = floor( h / 24);  
         heure = floor(h - (j * 24));  
         m = (m - (j * 24 * 60) - (heure * 60) );  
        }  
   sprintf(up,"%d days %02d:%02d",j,heure,m);  
   
 }  
   
   
//-----------------------------------------------------------  
int main(int argc, char** argv)  
  {  
   char uptime[160];  
   gdImagePtr im;  
   int blanc,bleu,gris,noir;  
   FILE *out;  
   
   
/*  
   if (argc > 1)  
      strncpy(uptime,argv[1],sizeof(uptime));  
   else  
      exit(1);  
*/  
   if (fork() != 0)  
      exit(EXIT_SUCCESS);  
   
   setsid();  
   
   
   while (1) {  
       sys_uptime(uptime);  
   
       im = gdImageCreate(160,18);  
   
       blanc = gdImageColorAllocate(im,255,255,255);  
       gris = gdImageColorAllocate(im,128,128,128);  
       bleu = gdImageColorAllocate(im,0,0,255);  
       noir = gdImageColorAllocate(im,0,0,0);  
   
       gdImageString(im,gdFontSmall,0,0,uptime,noir);  
   
       if ((out=fopen("uptime.png","wb" )) != NULL)  
         {  
          gdImagePng(im,out);  
          fclose(out);  
         }  
   
       gdImageDestroy(im);  
       sleep(60);  
     }  
   
   exit(1);  
  }  
   
   
ca produit qq chose comme: http://netoid.dynodns.net/uptime.png  
   
donc juste une insertion d'un png depuis votre web sur ce topic  ;)

 

[edtdd]--Message édité par nicotine--[/edtdd]


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 16-11-2001 à 20:56:10   

Reply

Marsh Posté le 16-11-2001 à 20:58:19    

http://netoid.dynodns.net/uptime.png  
 
mkd7.2 : noyau 2.2.17  (233 Mhz/ 64 Mo)
smtp,pop,ftp,telnet,http,snmp,smb,rsh,mysql etc ...

 

[edtdd]--Message édité par nicotine--[/edtdd]


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 16-11-2001 à 21:34:52    

Kernel Version 2.4.7-10  
Uptime 6 days 1 hours 13 minutes  
 
ke ca pour le moment :D
apache mysql smb proxy telnet.
233/128Mo

Reply

Marsh Posté le 16-11-2001 à 23:35:54    

http://www.surleau.org/myuptime/myuptime.php
 
e-smith 5.0 (March Networks SME Server)
noyau 2.2.19 (233 Mhz/ 256 Mo)  
smtp,pop,ftp,http,smb,php,mysql etc ...  
 
Source en php de myuptime : http://www.surleau.org/myuptime/myuptimesource.php

 

[edtdd]--Message édité par Mara's dad--[/edtdd]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 17-11-2001 à 00:16:43    

uptime : 27 days, 20:47
mandrake 8.1
2.4.12
apache, php (+gd), mysql, samba, pop3d, postfix (+avp)

Reply

Marsh Posté le 17-11-2001 à 00:20:39    

joli ;)


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 17-11-2001 à 01:36:08    

http://slyangel.hn.org/uptime.png
 
Debian 2.2R3 ( Bi-PII 400, 256 Mo )
Kernel 2.4.9 ( SMP )
 
Apache, PHP, MySQL, Seti, ircd, kaillera, postfix, samba, named, pure-ftpd, eggdrop, squid, ...

 

[edtdd]--Message édité par Sly Angel--[/edtdd]

Reply

Marsh Posté le 17-11-2001 à 03:20:50    

z'avez des courbes d'activités ?  
 
l'uptime de la deb' m'interresse fortement ;)


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 17-11-2001 à 03:27:35    

je te mets ça wait
 
( enfin bon ça se limite a CPU load, procs, mem )

 

[edtdd]--Message édité par Sly Angel--[/edtdd]

Reply

Marsh Posté le 17-11-2001 à 03:35:25    

Charge : ( sur 200 )
 
http://perso.wanadoo.fr/slyangel/deb/cpu-month.png
 
( 2 seti + le reste on monte au dessus de 2 de charge mais ça gêne pas trop à l'utilisation, à la fin j'ai coupé un des 2 setis )
 
Memoire :
( foncé : utilisée  clair : libre )
 
http://perso.wanadoo.fr/slyangel/deb/mem-month.png
 
Processus :
 
http://perso.wanadoo.fr/slyangel/deb/procs-month.png
 
Débit ADSL :
 
http://perso.wanadoo.fr/slyangel/deb/adsl-month.png

 

[edtdd]--Message édité par Sly Angel--[/edtdd]

Reply

Marsh Posté le 17-11-2001 à 03:35:25   

Reply

Marsh Posté le 17-11-2001 à 03:51:12    

sont classe tes graphes sly .... c'est quoi tes codes couleurs ?


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 17-11-2001 à 04:00:36    

Merci :)
 
Colours[_]: LIGHT BLUE#7aafff,BLUE#1000ff,DARK BLUE#000066,VIOLET#ff00ff,GREEN#00ff00

Reply

Marsh Posté le 17-11-2001 à 05:48:44    

avec tes codes couleurs , c'est mieux ;)  
 
http://netoid1/mrtg/html/netoid1-week.png


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 17-11-2001 à 10:21:54    

avec koi vous faites de bo graphs comme chat :??:

Reply

Marsh Posté le 17-11-2001 à 12:09:02    

C'est mon routeur, mais il ne fait pas grand chose à part router (un peu de smb et nfs), donc il est pas sollicité de trop :
 
uptime : 166 days, 20:11
Noyau 2.2.19
Cyrix P150+ @ 120 MHz, 48 Mo de RAM

Reply

Marsh Posté le 17-11-2001 à 12:14:08    

plouf02 a écrit a écrit :

avec koi vous faites de bo graphs comme chat :??:  




 
avec MRTG ( http://mrtg.hdl.com/mrtg.html )
 
Il se base sur des scripts que tu peux faire très facilement pour un peu tout... :)

Reply

Marsh Posté le 17-11-2001 à 12:15:04    

Jak a écrit a écrit :

C'est mon routeur, mais il ne fait pas grand chose à part router (un peu de smb et nfs), donc il est pas sollicité de trop :
 
uptime : 166 days, 20:11
Noyau 2.2.19
Cyrix P150+ @ 120 MHz, 48 Mo de RAM  




 
Hé bé cyrix ça tient quand même debout cette bestiole :D

Reply

Marsh Posté le 17-11-2001 à 12:26:12    

Sly Angel a écrit a écrit :

 
 
avec MRTG ( http://mrtg.hdl.com/mrtg.html )
 
Il se base sur des scripts que tu peux faire très facilement pour un peu tout... :)  




thx ;)
 
:lol: :lol: pour le cyrix :D

Reply

Marsh Posté le 17-11-2001 à 12:34:59    

serveur web (apache, php, mysql), mail, mailing lists, ftp, ssh, etc... p 233mmx, 192Mo de ram, 2.5Go HD.
http://uptime.netcraft.com/up/graph/?site=www.alrj.org
Le downtime, c'est le passage au kernel 2.2.19 :)


---------------
http://www.alrj.org
Reply

Marsh Posté le 17-11-2001 à 12:45:51    

Sly Angel a écrit a écrit :

 
 
Hé bé cyrix ça tient quand même debout cette bestiole :D  



Bah ouais. J'ai jamais eu de problème de stabilité avec, sauf quand il était à 133MHz sous Windows95. Mais meme à l'époque (donc o/c à 133 MHz), Quake sous Linux (+3Dfx), il ne m'a jamais pété à la gueule. :)

Reply

Marsh Posté le 17-11-2001 à 16:32:02    

[phedy@hips phedy]$ uptime
  4:28pm  up 256 days, 20:55,  1 user,  load average: 1.00, 1.00, 1.00
 
Linux hips.XXXXXXXXXXX.fr 2.2.14-VA.5.1 #1 Tue Sep 12 18:08:18 PDT 2000 i686 unknown
 
System Red Hat 6.0 VAlinux

Reply

Marsh Posté le 17-11-2001 à 16:34:14    

:eek:

Reply

Marsh Posté le 17-11-2001 à 17:20:59    

plouf02 a écrit a écrit :

:eek:  




 
J'ai pas de grands mérites, il fait serveur imap et comme il glande le WE il fait du Seti d'ou la charge régulière a 1 aujourd'hui

Reply

Marsh Posté le 17-11-2001 à 21:45:49    

Phedy a écrit a écrit :

 
 
J'ai pas de grands mérites, il fait serveur imap et comme il glande le WE il fait du Seti d'ou la charge régulière a 1 aujourd'hui  




 
Bah c'est bien de pas avoir eu de pépins quand même ( style moi je sais qu'il y a 39 jours, Montpellier était innondé et tout le Sud de la ville privé d'électricité, dont mon serveur :fou: )

Reply

Marsh Posté le 17-11-2001 à 22:43:32    

Heu, y'a quelqu'un qu'a une bonne adresse de doc sur ce qu'on trouve dans /proc.
 
J'ai rien dans mes bouquins ! Et sur le net, je trouve des milliards de pages qui traitent toutes d'un cas particulier.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 17-11-2001 à 22:51:58    

Mara's dad a écrit a écrit :

Heu, y'a quelqu'un qu'a une bonne adresse de doc sur ce qu'on trouve dans /proc.  
 
J'ai rien dans mes bouquins ! Et sur le net, je trouve des milliards de pages qui traitent toutes d'un cas particulier.  




 
Les sources de Linux sont un bon point d'entrée... Notament le repertoire Documentation... Faut faire du grep au taquet pour cibler l'info mais c'est assez efficace.

Reply

Marsh Posté le 17-11-2001 à 23:05:18    

C'est bien mon problème !
Avec ma distrib e-smith, j'ai pas tout çà.
Normalement y'a même pas de quoi compiler une appli.
C'est pas une distrib de développement, c'est juste pour un serveur et une passerelle.
Bon, bien sûr, on peut le faire, mais faut se taper à la main l'install de tous les packages ! Et là c'est pas mon but.
Si j'ai fait une version PHP de myuptime, c'est parceque j'ai pas de quoi compiler le prog de nicotine ;-) ( Et aussi pour que l'image soit générée à la demande et pas en continue par un démon )


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 18-11-2001 à 03:54:37    

mon prog plante a des moments inattendus : obligé de passer par le cron maintenant.  
 
Mais pour utiliser ton script Mara's , il faut un php compilé avec la lig gd de toute facon donc la esmith aura tout prévu ? ;)


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 18-11-2001 à 04:19:31    

grosse connerie qui m'a couté cher , ne pas passer mon code en crontab sans y apporter qq modifs , il y a un while(1) et ca m'a couté l'uptime :cry: because " too many open files in system" et plus moyen d'executer aucune commande sans obtenir ce msg :( ...  
 
argl ....


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 18-11-2001 à 05:14:23    

nicotine a écrit a écrit :

grosse connerie qui m'a couté cher , ne pas passer mon code en crontab sans y apporter qq modifs , il y a un while(1) et ca m'a couté l'uptime :cry: because " too many open files in system" et plus moyen d'executer aucune commande sans obtenir ce msg :( ...  
 
argl ....  




 
argh ! :(
 
alors à raison de 1 myuptime lancé par minute, combien de temps faut-il pour saturer la machine en process ? ( fork powah )
 
Putain la haine quand même :(

Reply

Marsh Posté le 18-11-2001 à 08:35:57    

humm intéressant son code... j'aime bien ceux qui s'amusent à réinventer la roue, je les vois se fatiguer pour rien alors que la sortie de la commande uptime ou de gtkrellm ou autre soft suffit pour montrer l'uptime.
 
Désolé pour cette remarque disons un peu négative parce que je m'en pète de l'uptime, je préfère le taux d'utilisation du CPU...

Reply

Marsh Posté le 18-11-2001 à 09:16:05    

Ben c'est sûr, la command uptime te donne l'info, mais c'est un bon exercice que de chercher à l'interprèter soi-même.
C'est une bonne entrée en matière comme une autre pour écrire des progs de surveillance dy système.
 
Je cherche toujours de la doc sur les autres fichiers de /proc . . .
 
A propos de la e-smith la version de PHP est la 4.0.4pl1.
Elle est livrée configurée comme çà : http://www.surleau.org/phpinfo.php


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 18-11-2001 à 09:43:52    

AlphaT a écrit a écrit :

humm intéressant son code... j'aime bien ceux qui s'amusent à réinventer la roue, je les vois se fatiguer pour rien alors que la sortie de la commande uptime ou de gtkrellm ou autre soft suffit pour montrer l'uptime.
 
comme tu dit , c'est de trop .  Comment affiche tu ton uptime en live sur ce forum  ?  tssss ....  
ou alors tu tates du protocole http avec cookies et tout le tralala pour editer ton post et y modifier l'uptime ?  
 
mais heureusement que tu me signales la presence de la commande uptime ou de gkrellm ....j'aurais jamais trouvé sans toi ..
 
lol ...  
 

 
Désolé pour cette remarque disons un peu négative parce que je m'en pète de l'uptime, je préfère le taux d'utilisation du CPU...  
 
on est content pour toi
 



 

[edtdd]--Message édité par nicotine--[/edtdd]


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le 18-11-2001 à 15:41:24    

j'ai du modifier ton script Mara's dad, il fct pas chez moi (j'ai pas les TTF, impossible de les installer :( )


Message édité par ethernal le 30-11-2002 à 11:56:15
Reply

Marsh Posté le 18-11-2001 à 16:09:57    

Les installer ?
Je me suis contenté de copier les fichiers TTF dans un répertoire fonts de mon serveur !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 18-11-2001 à 17:03:39    

hum... lors de la compil de gd, j'ai du indiquer les librairies jpeg, gif, ... et aussi ttf.  je les avait installé, mais il faisait une erreur, donc j'ai laissé tombé.
 
toi tu les copies simplement dans un répertoire ?? tu as fais quoi comme installation gd ??

 

[edtdd]--Message édité par ethernal--[/edtdd]

Reply

Marsh Posté le 18-11-2001 à 17:47:02    

J'ai rien compilé, tout est fourni en standard avec la e-smith.
 
Mais faut pas confondre la librairie TTF (freetype) http://www.freetype.org/ et les polices elles-même !
 
Moi, c'est les polices que j'ai copié. Elles sont pas fournies avec freetype, j'ai juste pompé celle qui m'intéresse sur mon windows !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 18-11-2001 à 17:58:08    

AlphaT a écrit a écrit :

humm intéressant son code... j'aime bien ceux qui s'amusent à réinventer la roue, je les vois se fatiguer pour rien alors que la sortie de la commande uptime ou de gtkrellm ou autre soft suffit pour montrer l'uptime.
 
Désolé pour cette remarque disons un peu négative parce que je m'en pète de l'uptime, je préfère le taux d'utilisation du CPU...  




 
C'est qu'un bout de code, je vois pas le problème de se taper 30 lignes de C pour faire ça, c'est pas la mort est c'est tout à fait adapté à la situation.
 
Si il avait refait un truc déjà fait en 3 mois de boulot ok mais là...

Reply

Marsh Posté le 18-11-2001 à 19:54:39    

Mara's dad a écrit a écrit :

J'ai rien compilé, tout est fourni en standard avec la e-smith.
 
Mais faut pas confondre la librairie TTF (freetype) http://www.freetype.org/ et les polices elles-même !
 
Moi, c'est les polices que j'ai copié. Elles sont pas fournies avec freetype, j'ai juste pompé celle qui m'intéresse sur mon windows !  




 
ha ok on se comprend mieux ;)

Reply

Marsh Posté le 18-11-2001 à 20:43:50    

Mara's dad a écrit a écrit :

 
Je cherche toujours de la doc sur les autres fichiers de /proc .  




 
un lien assez complet :  
http://okki666.free.fr/newbie/linux070.htm

 

[edtdd]--Message édité par nicotine--[/edtdd]


---------------
Do androïds dream of electric sheep ?
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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