Monitoramento simples de servidores

Publicado por Alessandro Dias 18/05/2007 (última atualização em 09/09/2015)

[ Hits: 31.071 ]

Download monitor.tar.gz

Download 1441216625.monitor.tar.gz (versão 2)




Este script, que se encontra na versão 1.0, faz um monitoramento simples (IP e portas) de seus servidores ou equipamentos.

Você informa quais máquinas e portas serão monitoradas pelo script. Para isso altere o arquivo de configuração "monitor.conf" conforme os comentários.

  



Versões atualizadas deste script

Versão 2 - Enviado por Alessandro Dias em 02/09/2015

Changelog: Corrigindo o script!

Download 1441216625.monitor.tar.gz


Esconder código-fonte

<?php
// Programa para monitoramento de rede
// Desenvolvido por: Alessandro Dias
// Data: 03/05/2007
// ------------------------------------------------- 

// ------------------------------------------------- Funcoes
include "functions.php";

//-----------Lê o arquivo de configuração
$conf=ler_config("monitor.conf");

$autor=$conf[0]["autor"];
$titulo=$conf[0]["titulo"];
$nr_servidores=$conf[0]["nr_servidores"];

//------ VERIFICACAO DO STATUS DAS MAQUINAS
for ($i=1;$i<=$nr_servidores;$i++) {
     $ip[$i] = $conf[$i]["ip"];
     $ip[$i] = gethostbyname($ip[$i]);
     $ok=testa_ping($ip[$i]);
    $resp=1; 
     if (!$ok)
         $serv_status[$i] = $DESLIGADO;
     else 
     {        //---------------------- ping ok
        $portas=explode(",",$conf[$i]["portas"]);  
       for ($j=0;$j<count($portas);$j++) {
             $ok_porta[$i][$portas[$j]]=testa_porta($ip[$i],$portas[$j]);
          $resp &= $ok_porta[$i][$portas[$j]];
       }   
         if ($resp)
                 $serv_status[$i] = $LIGADO;
             else
                 $serv_status[$i] = $SEM_SERVICO;
          
       $topico[$i] = $conf[$i]["topico"]; 
       $serv_img[$i]=retorna_imagem($serv_status[$i]); 
     }
}

for ($i=$nr_servidores+1;$i<=12;$i++) {
    //------------------------------ 
    $topico[$i] = " ";  
     $serv_status[$i]=$VAGO;
    $serv_img[$i]=retorna_imagem($serv_status[$i]); 
    //------------------------------ 
}

?>


<HTML>
<HEAD>
<style type="text/css">
div {
position: absolute;
left: 200px;
top: 400px;
background-color: #ffffff;
width: 450px;
padding: 10px;
color: black;
border: #0000cc 2px;
display: none;
-moz-opacity: 0.85;
opacity: 0.85;
filter: alpha(opacity=85);
}
</style>

<script language="JavaScript">
function setVisibility(id, visibility, x, y) {
   document.all[id].style.left = x;
   document.all[id].style.top = y;
   document.all[id].style.display = visibility;
}
</script>

<SCRIPT TYPE="text/javascript">
<!--
function popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
   href=mylink;
else
   href=mylink.href;
window.open(href, windowname, 'width=700,height=300,scrollbars=yes');
return false;
}
//-->
</SCRIPT>

<TITLE>MONITORAMENTO DE SERVIDORES</TITLE>

<!--
<meta http-equiv="refresh" content="60"> 
-->
</HEAD>


<HEAD>

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">

</HEAD>

<BODY BGCOLOR=#000000 LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
<FONT COLOR="white" SIZE=5 TYPE="arial"><?=$titulo?></FONT>

<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0>

    <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[1]?>', 'inline', 350, 50);" 
                 onMouseOut="setVisibility('<?=$topico[1]?>','none',0,0);" 
             SRC="images/<?=$serv_img[1]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[2]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[2]?>','none',0,0);" 
             SRC="images/<?=$serv_img[2]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[3]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[3]?>','none',0,0);" 
             SRC="images/<?=$serv_img[3]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>
   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[1]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[2]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[3]?></FONT></TD>

   </TR>

   <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[4]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[4]?>','none',0,0);" 
             SRC="images/<?=$serv_img[4]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[5]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[5]?>','none',0,0);" 
             SRC="images/<?=$serv_img[5]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[6]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[6]?>','none',0,0);" 
             SRC="images/<?=$serv_img[6]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>
   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[4]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[5]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[6]?></FONT></TD>

   </TR>

   <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[7]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[7]?>','none',0,0);" 
             SRC="images/<?=$serv_img[7]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[8]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[8]?>','none',0,0);" 
             SRC="images/<?=$serv_img[8]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[9]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[9]?>','none',0,0);" 
             SRC="images/<?=$serv_img[9]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>
   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[7]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[8]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[9]?></FONT></TD>

   </TR>

   <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[10]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[10]?>','none',0,0);" 
             SRC="images/<?=$serv_img[10]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[11]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[11]?>','none',0,0);" 
             SRC="images/<?=$serv_img[11]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[12]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[12]?>','none',0,0);" 
             SRC="images/<?=$serv_img[12]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>

   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[10]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[11]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[12]?></FONT></TD>

   </TR>

</TABLE>
<BR>
<TABLE BORDER=1 CELLPADDING=0 CELLSPACING=0>

   <TR>
      <TD COLSPAN=2 ALIGN="center"><FONT COLOR="white">LEGENDA</FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-verde.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white">OK</FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-vermelho.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> SEM SERVICO </FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-azul.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> ATENCAO </FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-preto.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> DESLIGADO </FONT></TD>

   </TR>
   <TR>

      <TD><IMG SRC="images/mini-branco.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> VAGO </FONT></TD>

   </TR>
</TABLE>

<BR><FONT COLOR="white"><?=$autor?></FONT>

<? for ($i=1;$i<=$nr_servidores;$i++) { ?>

  <div id="<?=$topico[$i]?>"><table>
                 <tr><td colspan=2><font color=darkblue><?=$topico[$i]?></font> (<?=$ip[$i]?>)</td></tr>
        <?  if($serv_status[$i] == $DESLIGADO) 
                 $corpo="<tr><td>TURN OFF</td></tr>";
            else { 
             $corpo=""; 
             $portas=explode(",",$conf[$i]["portas"]);   
             for ($j=0;$j<count($portas);$j++) { 
                     if ($ok_porta[$i][$portas[$j]])
                         $corpo.="<tr><td width=160>tcp/".$portas[$j]."</td><td><font color=green>ON</font></td></tr>";
                     else
                         $corpo.="<tr><td width=160>tcp/".$portas[$j]."</td><td><font color=red>OFF</font></td></tr>";
             }
            }  ?>
  <?=$corpo?>
  </table></div>
<? } ?>


</BODY>

</HTML>

Scripts recomendados

Monitoramento simples de servidores

Script PHP para fazer UPLOAD de arquivos

webProxy feito em PHP

PHPsysInfo 2.1

Babelfish Translator


  

Comentários
[1] Comentário enviado por lanux em 20/05/2007 - 10:09h

Corrige aí...

Erro: arquivo monitor.tar.gz não encontrado !

[2] Comentário enviado por diaspcf em 21/05/2007 - 17:24h

Pessoal, não sei o que está havendo, mas todos os meus scrits estão com esse problema. Já entrei em contato várias vezes com os moderadores pelo email do suporte, mas até agora nenhum retorno!!!
Caso alguem queira o script, me mande uma mensagem com o email que eu mando, ok?
Att.
Alessandro.

[3] Comentário enviado por emanueljp em 16/09/2007 - 15:59h

Alessandro gostaria de receber o script.
Por favor envie para o email [email protected]
Grato,
Emanuel

[4] Comentário enviado por jgilcustodio em 24/09/2008 - 16:23h

Alessandro
Estou precisando também de seu script se você puder manda no meu email eu agradeceria.
Segue meu e-mail: [email protected]

Obrigado,
Junior

[5] Comentário enviado por leandroc_rj em 15/10/2008 - 10:24h

Bom dia, Alessandro,

Por favor, envie o arquivo também para mim: "[email protected]".

Obrigado, Leandro.

[6] Comentário enviado por megapoint em 10/11/2008 - 15:36h

Opa Alessandro...

Gostaria de receber também, [email protected]

valew

Adriano

[7] Comentário enviado por coastbr em 25/02/2009 - 13:33h

Opa Alessandro...

Gostaria de receber também, [email protected]

[8] Comentário enviado por rsribas em 01/09/2009 - 16:30h

Caro Alessandro,

Favor enviar para o e-mail: [email protected]

grato.

[9] Comentário enviado por rribeirorj em 17/02/2010 - 13:26h

Caro Alessandro,

Se possível, me envie o script?

[email protected]

Atenciosamente.

[10] Comentário enviado por kappaum em 29/06/2010 - 09:44h

Alessandro,

Gostaria de receber o script.

[email protected]

Desde já agradeço.

[11] Comentário enviado por dtux em 17/08/2010 - 07:49h

Alessandro,

Gostaria de receber o script por e-mail.

[email protected]

Desde já agradeço.

[12] Comentário enviado por jotajunior em 14/12/2010 - 09:08h

Alessandro,

Gostaria de receber o script por e-mail:

[email protected]

Muito Obrigado.

[13] Comentário enviado por lord_vagner em 15/03/2011 - 17:20h

Alessandro
Se possivel, envie o script para [email protected]
Obrigado.

[14] Comentário enviado por eder.mvitor em 02/08/2011 - 15:45h

Alessandro,

cara to procurando algo assim como seu script sera que poderia enviar para [email protected]
desde ja agradeco.

[15] Comentário enviado por h474k3 em 30/08/2011 - 22:40h

Alessandro,
Você poderia me mandar este arquivo (monitor.tar.gz) por e-mail [email protected] estou precisando de algo com esta funcionalidade, e acho que seu script pode me ajudar.
Obrigado.

[16] Comentário enviado por luizcotrin em 20/10/2011 - 06:02h

Olá Alessandro, tudo bem?
Quando puder você me envia o aquivo monitor.tar.gz, por favor.

Obrigado

[17] Comentário enviado por josef em 12/02/2012 - 06:22h

Cara, manda ai: [email protected], valeu

[18] Comentário enviado por geraldobjr em 23/02/2012 - 08:38h

amigo, pode me enviar por email tbm ??
[email protected]

[19] Comentário enviado por raynerson em 26/02/2012 - 12:05h

Alessandro, boa tarde!

Tem como você encaminhar pro meu e-mail também?

e-mail: [email protected]

Ficarei muito grato!

Atenciosamente,
Raynerson Moura

[20] Comentário enviado por guilhermeTI em 18/07/2013 - 13:24h

Opa!

por favor, envia para mim também:
[email protected]

ficarei muito grato!

aguardo!

[21] Comentário enviado por victor_angelo23 em 08/10/2013 - 14:48h

Por favor alguém poderia enviar pra mim esse monitor de servidor e equipamento!!

Ficarei aguardando,

Atenciosamente,
Victor Silva

[22] Comentário enviado por victor_angelo23 em 08/10/2013 - 15:01h

Esqueci de postar meu E-mail no comentário anterior é [email protected]

[23] Comentário enviado por rac7 em 06/01/2014 - 11:14h

Bom dia!
tem como mandar no meu e-mail [email protected]

obrigado!

[24] Comentário enviado por removido em 17/04/2014 - 15:12h

gostaria de receber o script

[25] Comentário enviado por rochaigo em 15/07/2014 - 15:24h

Ola Alessandro, por gentileza gostaria de receber o script, meu e-mail [email protected]
Abraço

[26] Comentário enviado por ordiley em 10/10/2014 - 20:14h

Boa noite Alessandro,

Gostaria de receber o arquivo monitor.tar.gz
[email protected]

Obrigado!

[27] Comentário enviado por milton7766 em 02/09/2015 - 14:52h

Boa Tarde, Caro Alessandro,

Gostaria de receber o arquivo " monitor.tar.gz "
[email protected]

Um Cordial Abraço e
Obrigado!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts