O sistema tem por objetivo de realizar determinado teste e retornar o erro, publicando em uma página web que fica atualizando de segundo em segundo, ficando assim um monitoramento em tempo real.
- Instale o apache
- Crie uma pasta dentro de /var/www/monitor
- Verifique as permissões da pasta criada, certifique-se que está com permissão de escrita..
- Instale no diretório /var/www/ os arquivos “html” fornecidos no artigo..
- Crie uma pasta dentro de /var/www/monitor
- Verifique as permissões da pasta criada, certifique-se que está com permissão de escrita..
- Instale no diretório /var/www/ os arquivos “html” fornecidos no artigo..
Copie os scripts para /bin
Certifique as permissões 555 para os scripts..
Observe se a página no apache apareceu no navegador http://192.168.0.1/monitor/index.html
Modo de uso:
Chame o script tester no terminal da mesma máquina com o script, com a seguinte sintaxe..
$ tester [nome do servidor] [ip] [service] [status] [tabela1.html]
$ tester [nome do servidor] [ip] [service] [status] [tabela1.html]
Obs: vc criará para cada teste a saída com nome diferente, está configurado no arquivo index.html o link da tabela1.html até tabela20.html,
EX:
teste monitoramento 1 : $tester “proxy server” 10.12.0.1 Proxy tabela1.html
teste monitoramento 2 : $tester “apache server” 10.12.0.2 Apache tabela2.html
teste monitoramento 3 : $tester “SQLserver” 10.12.0.3 Sql tabela3.html
teste monitoramento 1 : $tester “proxy server” 10.12.0.1 Proxy tabela1.html
teste monitoramento 2 : $tester “apache server” 10.12.0.2 Apache tabela2.html
teste monitoramento 3 : $tester “SQLserver” 10.12.0.3 Sql tabela3.html
Nesta primeira versão o tester somente está realizando um teste de ping com 3 saltos, o tester repassa o resultado do teste para o monitor que desenha a tabela X linkada a página index.html
Estarei analisando outras metodologias para conseguir monitorar determinados serviços, assim podendo ficar mais completo e usual, este sistema pode ser muito útil a provedores.
Façam bom proveito!!!
By Roberto Fettuccia
------------Script monitor--------------
#!/bin/bash
clear
semntr=
"$1"
ipmntr=
"$2"
stmntr=
"$4"
scmntr=
"$3"
Xouthtm=
"$5"
wwwroot=
"/var/www/monitor"
varmktemp=
"$(echo $$)"
main(){
if
[
"$1"
==
"--help"
];
then
fun.help
fi
if
[ -z
"$semntr"
] || [ -z
"$ipmntr"
] || [ -z
"$scmntr"
] || [ -z
"$stmntr"
] || [ -z
"$Xouthtm"
];
then
if
[ -z
"$semntr"
] ;
then
echo
"Error change NAME string valid!...."
fi
if
[ -z
"$ipmntr"
];
then
echo
"Error change IP string valid!...."
fi
if
[ -z
"$scmntr"
];
then
echo
"Error change SERVICE string valid!...."
fi
if
[ -z
"$stmntr"
] || [
"0"
=!
"$stmntr"
] || [
"1"
=!
"$stmntr"
] ;
then
echo
"Error change STATUS vallue valid!....
0 = service error or offline
1 = service ok, online"
fi
if
[ -z
"$Xouthtm"
];
then
echo
"Error change OUTFILE string valid!...."
fi
fun.help
else
fun.publica
fi
}
fun.publica(){
unset
vxhtm
unset
updownservice
#verify return status for fized color string to $stmntr
if
[ $stmntr ==
"0"
];
then
updownservice=
"#FFFF00"
# Yellow Vallue
varSTATUS=
"ERROR"
# message error
strBEG=
"<b>"
# Apply Bold "negrito"
strEOF=
"</b>"
#
Xcontrast=
"#000000"
else
updownservice=
"#0000FF"
# blue Vallue
varSTATUS=
"OK"
strBEG=
""
strEOF=
""
Xcontrast=
"#FFFFFF"
fi
export
vxhtm='<META HTTP-EQUIV=
"REFRESH"
CONTENT=
"5"
>
<body>
<!--tabela dados inicio-->
<TABLE WIDTH=100% CELLPADDING=4 CELLSPACING=0
#0000ff>
<COL WIDTH=85*>
<COL WIDTH=85*>
<COL WIDTH=85*>
<TR VALIGN=TOP>
<TD WIDTH=25% STYLE=
"border-top: 1px solid #000000; border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; padding-top: 0.1cm; padding-bottom: 0.1cm; padding-left: 0.1cm; padding-right: 0cm"
>
<!--Servidor--><P STYLE=
"background: '$Xcontrast'"
><FONT COLOR=
"'$updownservice'"
>
'$strBEG'
'$semntr'
'$strEOF'
<
/P
>
<
/TD
>
<TD WIDTH=25% STYLE=
"border-top: 1px solid #000000; border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; padding-top: 0.1cm; padding-bottom: 0.1cm; padding-left: 0.1cm; padding-right: 0cm"
>
<!--IP--><P STYLE=
"background: '$Xcontrast'"
><FONT COLOR=
"'$updownservice'"
>
'$strBEG'
'$ipmntr'
'$strEOF'
<
/P
>
<
/TD
>
<TD WIDTH=25% STYLE=
"border: 1px solid #000000; padding: 0.1cm"
>
<!--Serviço--><P STYLE=
"background: '$Xcontrast'"
><FONT COLOR=
"'$updownservice'"
>
'$strBEG'
'$scmntr'
'$strEOF'
<
/P
>
<
/TD
>
<TD WIDTH=25% STYLE=
"border: 1px solid #000000; padding: 0.1cm"
>
<!--Status--><P STYLE=
"background: '$Xcontrast'"
><FONT COLOR=
"'$updownservice'"
>
'$strBEG'
'$varSTATUS'
'$strEOF'
<
/FONT
><
/P
>
<
/TD
>
<
/TR
>
<
/TABLE
>
<!--tabela dados fim-->
<
/body
>'
echo
"$vxhtm"
> $wwwroot
/tmp/
$varmktemp.tmp
mv
$wwwroot
/tmp/
$varmktemp.tmp $wwwroot/
"$Xouthtm"
}
fun.help(){
echo
"
Usage ..
monitor [name] [ip] [service] [status] [outfile HTML]
mail contact : rpaulafettuccia@yahoo.com.br
by Roberto Fettuccia"
exit
}
main
------------fim script monitor-------------------
----------script tester----------------
#!/bin/bash
ping
-c 3 $2 && vtest=
"1"
if
[ -z $vtest ] || [ $vtest =!
"1"
];
then
vtest=
"0"
fi
.
/monitor
"$1"
"$2"
"$3"
"$vtest"
"$4"
--------------fim script tester--------------
arquivo para colocar no apache
/var/www/monitor
--------arquivo cabecalho.html--------
<BODY LANG=
"pt-BR"
DIR=
"LTR"
>
<P ALIGN=CENTER><BR>
<
/P
>
<P ALIGN=CENTER><B>MONITOR Web<
/B
><
/P
>
<P ALIGN=CENTER><B>Ver 1,0 By Roberto Fettuccia<
/B
><
/P
>
<P ALIGN=CENTER><BR><BR><
/P
>
<!--tabela cabeçalho inicio-->
<TABLE WIDTH=100% CELLPADDING=4 CELLSPACING=0>
<COL WIDTH=85*>
<COL WIDTH=85*>
<COL WIDTH=85*>
<TR VALIGN=TOP>
<TD WIDTH=25% STYLE=
"border-top: 1px solid #000000; border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; padding-top: 0.1cm; padding-bottom: 0.1cm; padding-left: 0.1cm; padding-right: 0cm"
>
<P><B>SERVIDOR<
/B
><
/P
>
<
/TD
>
<TD WIDTH=25% STYLE=
"border-top: 1px solid #000000; border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; padding-top: 0.1cm; padding-bottom: 0.1cm; padding-left: 0.1cm; padding-right: 0cm"
>
<P><B>IP<
/B
><
/P
>
<
/TD
>
<TD WIDTH=25% STYLE=
"border: 1px solid #000000; padding: 0.1cm"
>
<P><B>SERVIÇO<
/B
><
/P
>
<
/TD
>
<TD WIDTH=25% STYLE=
"border: 1px solid #000000; padding: 0.1cm"
>
<P><B>STATUS<
/B
><
/P
>
<
/TD
>
<
/TR
>
<
/TABLE
>
<!--tabela cabeçalho fim-->
<
/body
>
--------fim arquivo cabecalho.html--------
--------inicio arquivo index.html---------
<HTML>
<HEAD>
<META HTTP-EQUIV=
"CONTENT-TYPE"
CONTENT=
"text/html; charset=utf-8"
>
<META HTTP-EQUIV=
"REFRESH"
CONTENT=
"3"
>
<TITLE>monitoramento de servicos<
/TITLE
>
<STYLE TYPE=
"text/css"
>
<
/STYLE
>
<
/HEAD
>
<FRAMESET ROWS=
"45%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%,10%"
FRAMEBORDER=
"0"
FRAMESPACING=
"0"
>
<FRAME SRC=
"./cabecalho.html"
NAME=
"superior"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela1.html"
NAME=
"tb1"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela2.html"
NAME=
"tb2"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela3.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela4.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela5.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela6.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela7.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela8.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela9.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela10.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela11.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela12.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela13.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela14.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela15.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela16.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela17.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela18.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela19.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<FRAME SRC=
"./tabela20.html"
NAME=
"tb3"
NORESIZE SCROLLING=
"NO"
>
<
/FRAMESET
>
<
/BODY
>
<
/HTML
>
--------fim arquivo index.html---------
Ref: Vivao Linux
0 comentários:
Postar um comentário