XIV. Graphiques mrtg pour le server-status Apache▲
Si le titre de cette partie n'evoque rien pour vous, consultez la documentation relative au module server-status d'Apache et la page d'accueil de l'archive à télécharger.
XIV-A. Archives▲
Téléchargez les sources : http://howto.aphroland.de/HOWTO/MRTG/ApacheWithMRTG/
cd /home/system/download/
md5sum apache.mrtg.tgz
ffa0cc1750998975f07fff8f70baeb9c  apache.mrtg.tgz
tar zxvf apache.mrtg.tgz
chmod 750 apache.mrtg-v0.1/
apt-get install mrtg libgd1 libsnmp-session-perl libdigest-md5-perl\
	libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl\
	libmime-base64-perl libnet-perl liburi-perl libwww-perl -d
cd /var/cache/apt/archives/
/usr/bin/md5sum mrtg_2.9.17-4_i386.deb libgd1_1.8.4-17.woody2_i386.deb\
	libsnmp-session-perl_0.90-1_all.deb libdigest-md5-perl_2.13-2_i386.deb\
	libhtml-parser-perl_3.25-1_i386.deb libhtml-tagset-perl_3.03-1_all.deb\
	libhtml-tree-perl_3.11-2_all.deb libmime-base64-perl_2.12-4_i386.deb\
	libnet-perl_1%3a1.09.01-1_all.deb liburi-perl_1.18-1_all.deb\
	libwww-perl_5.64-1_all.deb
  b7aced31ac2bd53afb5e3a41fe09a571  mrtg_2.9.17-4_i386.deb
  e47f36577bc77ca1ac1334a65a382ecd  libgd1_1.8.4-17.woody2_i386.deb
  09861e46c5bca03bec4f0db92f5e96a6  libsnmp-session-perl_0.90-1_all.deb
  c53a87f7e5f413f09becab2d4ef568a0  libdigest-md5-perl_2.13-2_i386.deb
  1292ae35b502239aa238bbf72579a074  libhtml-parser-perl_3.25-1_i386.deb
  4c64c498e99144f7ebcd65a5ba301991  libhtml-tagset-perl_3.03-1_all.deb
  da8da0d786b29f92254e7ed74f970515  libhtml-tree-perl_3.11-2_all.deb
  f309d4b7f60e94c41e554ebe4d22aee6  libmime-base64-perl_2.12-4_i386.deb
  f0947fc68a8b1ef13929c540efacdb2e  libnet-perl_1%3a1.09.01-1_all.deb
  c8964c82978f10ca0657013ffd037c0e  liburi-perl_1.18-1_all.deb
  6a3f908c2fd7654201319d2d4b83e028  libwww-perl_5.64-1_all.debRemontez votre système de fichier en lecture/écriture.
apt-get install mrtg libgd1 libsnmp-session-perl libdigest-md5-perl\
	libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl\
	libmime-base64-perl libnet-perl liburi-perl libwww-perl
	=> Make mrtg owned and readable only by mrtg user ? YESRemontez votre système de fichier en lecture.
XIV-B. Configuration▲
mkdir /var/www/apache-mrtg
cd /var/www/apache-mrtg
mkdir confs etc
cd /home/system/download/apache.mrtg-v0.1
cp apache.html apache.mrtg.cfg apache.mrtg.pl mkapachemrtg.sh\
    /var/www/apache-mrtg/etc/
cd /var/www/apache-mrtg/etc/Si le serveur Web monitore est un serveur Apache tournant sur une plate-forme Windows, appliquez le patch suivant :
--- apache.mrtg.pl.orig Thu Nov  6 13:09:33 2003
  +++ apache.mrtg.pl      Thu Nov  6 13:09:33 2003
  @@ -78,7 +78,12 @@
     alarm 30; # have 30 seconds to get the INFO ...
     my $content = getcache($url); # get info status
     alarm 0;
  -  my ($Taccess, $TkBytes, $CPULoad, $Uptime, $ReqPerSec, $BytesPerSec,\
    $BytesPerReq, $BusyServers, $IdleServers, $null) = split(/\n/, $content);\
    # split content
  +
  +  if ($content !~ /CPULoad/) {
  +    $content =~ s/Uptime: /CPULoad: 0\nUptime: /;
  +  }
  +
  +  my ($Taccess, $TkBytes, $CPULoad, $Uptime, $ReqPerSec, $BytesPerSec,\
    $BytesPerReq, $BusyServers, $IdleServers, $null) = split(/\n/, $content);
     # strip some info - YES, UGLY CODE!
     $Taccess     =~ s/Total Accesses: //;Editez le fichier mkapachemrtg.sh pour les variables suivantes :
[...]
HTMLHOME="/var/www/htdocs/status-mrtg/" # mrtg output dir
SCRIPTHOME="/var/www/apache-mrtg/etc" # where is the apache.mrtg.pl
URLHOME="http://{WEBSERVER_MONITOR_IP}/status-mrtg" # url ...
CONFHOME="/var/www/apache-mrtg/confs" # where the apache.mrtg.cfg files go
MRTGBIN="/usr/bin/mrtg" # mrtg bin
[...]
chmod 750 /var/www/mrtg
cd /var/www/htdocs
mkdir status-mrtg
chown root:webadm status-mrtg/
chmod 3775 status-mrtg/Créez une configuration pour un serveur :
cd /var/www/apache-mrtg/etc
./mkapachemrtg.sh {SERVER_NAME} "-url http://{SERVER_IP}/server-status?auto"Vous avez dans /var/www/apache-mrtg/confs le fichier de configuration relatif à cette nouvelle entree.
Vous avez dans /var/www/htdocs/status-mrtg un répertoire servant de dépose pour les fichiers garphs. 
cd /var/www/htdocs/status-mrtg
chmod 3775 {SERVER_NAME}
chmod 1664 {SERVER_NAME}/*Testez maintenant la configuration :
/usr/bin/mrtg /var/www/apache-mrtg/confs/{SERVER_NAME}.apache.mrtg.cfgFinissez en créant un script d'appel aux statistiques :
cd /var/www/apache-mrtg
cat > monitor_servers.sh
#!/bin/sh
/usr/bin/mrtg /var/www/apache-mrtg/confs/{SERVER_NAME1}.apache.mrtg.cfg
/usr/bin/mrtg /var/www/apache-mrtg/confs/{SERVER_NAMEX}.apache.mrtg.cfg
^C
chmod 1750 monitor_servers.shEt rajoutez une entrée dans la crontab :
*/5 * * * * root /var/www/apache-mrtg/monitor_servers.sh


