Muito obrigado Jose!
Vou implementá-lo aqui e fazer os testes e logo que eu tiver algum resultado eu 
comunico!

Grato

----- Mensagem original ----
De: Jose Oliveira <[EMAIL PROTECTED]>
Para: Unofficial Brazilian (Portuguese) Nagios Users List 
<[email protected]>
Enviadas: Sexta-feira, 10 de Agosto de 2007 8:44:29
Assunto: Re: [Nagios-users-br] Res: Checar tablespace ORACLE

Olá Ikami

Segue o script que detecta se uma tabela está "estourando".

O conceito que criamos é o seguinte: O script "pergunta" ao Banco se tem
alguma tabela ou índice que ganhará erro do banco, quando for crescer o
próximo extent.
Este script roda no nagios aqui, a cada dez minutos para todos os Bancos.

Voce precisará do cliente do Oracle instalado na máquina do Nagios e acesso,
via SQL*Net, aos seus bancos. Crie um usuário nos Bancos e conceda "any
table" ao mesmo.

Lembre-se que este script está funcionando mas com falso negativo em banco
Oracle10, pois o conceito de extent ainda existe mas o tamanho do próximo é
controlado internamente pelo Banco e não mais em cada tabela.


#!/bin/sh
#Este plugin recebe dois parametros: o IP e o nome da instancia
#O Ip é usado apenas para criar o string de retorno e o log
if [ $2 = PROD17 -o $2 = PROD18 ]
then
   LOGON=nagios/password/[EMAIL PROTECTED]
else
   LOGON=nagios/[EMAIL PROTECTED]
fi
ORACLE_SID=$2
ORACLE_HOME=/oracle9/app/oracle/product/9.0.1
export ORACLE_HOME ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin
export PATH
sqlplus << FIM > /tmp/check_ora_te_$2.txt
$LOGON
column owner format a10
column tabela format a26
column tbs_name format a20
column free_kb format 9,999,999
column prox_kb format 9,999,999
select owner, segment_name tabela,a.tablespace_name tbs_name,free_bytes/1024
free_kb,
next_extent/1024 prox_kb
from dba_segments a,
(select tablespace_name, max(bytes) free_bytes
 from sys.dba_free_space
 group by tablespace_name
) b
where a.tablespace_name = b.tablespace_name and
(a.next_extent > b.free_bytes or
(a.next_extent+(a.next_extent*a.pct_increase/100)) > b.free_bytes);
quit;
FIM
cat /tmp/check_ora_te_$2.txt|grep "no rows selected" >/dev/null 2>&1
if [ $? -gt 0 ]
then
   echo "Tabela estourando na $1:$ORACLE_SID"
   exit 1
else
   echo "Tabela OK na $1:$ORACLE_SID"
   exit 0
fi









Em 09/08/07, ikami <[EMAIL PROTECTED]> escreveu:
>
> Esse script que voces fizeram ai eh uma mão na roda! Sera que nao tem como
> vc me enviá-lo nao? Ai eu tento adpatá-lo aqui.
> Eu não entendo nada de banco. Fui incumbido apenas de implementar o nagios
> para monitorar todo um ambiente. Falei com o DBA e ele está muito sem tempo
> agora. Está participando de outros projetos também e não tem previsão de
> quando pode ver isso comigo.
> Se voce pudesse me mandar esse script ou me dar os passos para eu criar um
> aqui seria de grande ajuda!
>
> Grato
>
> ----- Mensagem original ----
> De: Jose Oliveira <[EMAIL PROTECTED]>
> Para: Unofficial Brazilian (Portuguese) Nagios Users List <
> [email protected]>
> Enviadas: Terça-feira, 7 de Agosto de 2007 18:08:37
> Assunto: Re: [Nagios-users-br] Checar tablespace ORACLE
>
> Olá
>
> Aqui desenvolvemos um script mais elaborado, que faz uma query dinâmica ao
> Banco nas tabelas dba_tablespaces, dba_datafiles e dba_free_spaces fazendo
> um count(*) que retorna quantas tablespaces estão com a ocupação acima do
> parâmetro. Usamos como base 90%.
>
> Assim, criamos apenas uma entrada de monitoração por Servidor Oracle.
>
> E ainda fica bacana pois se o listener cair ou o Banco der algum pau,
> somente este teste já testa tudo...
>
> Veja ai com o seu dba se ele não faz uma query "bala" similar... A nossa
> deu
> pau no Oracle10 e estamos adequando-a...
>
> Eu posso te ajudar a como criar um plugin que roda uma query do Oracle...
>
>
> Em 07/08/07, ikami <[EMAIL PROTECTED]> escreveu:
> >
> > Ola pessoal,
> > alguem sabe se tem como checar varias tablespaces do banco oracle sem
> ter
> > que colocar uma entrada para cada tabela no services.cfg?
> > No arquivo commands.cfg coloquei uma entrada para a checagem da
> tablespace
> > utilizando o plugin check_oracle.sh.
> > No arquivo commands.cfg:
> >
> > define command{
> >         command_name    check_oracle_tablespace
> >         command_line    /usr/local/nagios/libexec/check_oracle
> > --tablespace $ARG1$ $ARG2$ $ARG3$ $ARG4$ $ARG5$ $ARG6$
> >         }
> >
> > No arquivo services:
> > define service{
> >         use                           generic-service-sid
> >         host_name                Banco
> >         service_description   Oracle TABLE_SPACE
> >
> >
> check_command      check_oracle_tablespace!bdteste!nagios!nagios!SYSTEM!95!85
> > }
> >
> > Isto acima eh para uma tablespace. O problema eh que tenho varios bancos
> > com varias tablespaces diferentes.
> >
> > Grato.
> >
> >
> >
> >
> >       Alertas do Yahoo! Mail em seu celular. Saiba mais em
> > http://br.mobile.yahoo.com/mailalertas/
> >
> -------------------------------------------------------------------------
> > This SF.net email is sponsored by: Splunk Inc.
> > Still grepping through log files to find problems?  Stop.
> > Now Search log events and configuration files using AJAX and a browser.
> > Download your FREE copy of Splunk now >>  http://get.splunk.com/
> > --
> > [email protected] mailing list
> > https://lists.sourceforge.net/lists/listinfo/nagios-users-br
> > Wiki: http://nagios-br.sf.net/wiki
> >
>
>
>
> --
>
> Abraços
> JGeraldo
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >>  http://get.splunk.com/
> --
> [email protected] mailing list
> https://lists.sourceforge.net/lists/listinfo/nagios-users-br
> Wiki: http://nagios-br.sf.net/wiki
>
>
>
>
>
>
>
>       Flickr agora em português. Você cria, todo mundo vê.
> http://www.flickr.com.br/
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >>  http://get.splunk.com/
> --
> [email protected] mailing list
> https://lists.sourceforge.net/lists/listinfo/nagios-users-br
> Wiki: http://nagios-br.sf.net/wiki
>



-- 

Abraços
JGeraldo
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
-- 
[email protected] mailing list
https://lists.sourceforge.net/lists/listinfo/nagios-users-br
Wiki: http://nagios-br.sf.net/wiki







      Flickr agora em português. Você clica, todo mundo vê.
http://www.flickr.com.br/
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
-- 
[email protected] mailing list
https://lists.sourceforge.net/lists/listinfo/nagios-users-br
Wiki: http://nagios-br.sf.net/wiki

Responder a