Olá José Oliveira

Foi até bom este assunto ressurgir na lista. Lembrei que prometi divulgar na 
lista as mudanças que eu fiz no script que você havia nos enviado.
Pois então, eis ele com as modificações. O script retorna o nome das tabelas 
que estão estourando e o tamanho delas. Retorna para o nagios o status de 
WARNING caso elas estejam com 80% de uso e CRITICAL caso estejam com 90% ou 
mais de uso.

PS: Uso esse script para verificar as tabelas num Oracle 10g

###############****************##################*******************

#!/bin/sh
#################################################################
#    *** Plugin para checagem das tabelas do ORACLE ***    #
#            Testado no Oracle 10g            #
#################################################################
# Criador por Ikami G. de Castilho e Gustavo Poppius        #
# Data: 21/08/2007                        #
# Versao: 1.0                            #
#################################################################
# Este plugin recebe dois parametros: o IP ou nome da maquina de#
#BD e o nome da instancia                    #
# O Ip é usado apenas para criar o string de retorno e o log    #
#################################################################
# Requisitos:
#1. Usuario e senha no BD para acesso do Nagios
#2.
#3.
#################################################################

# Confere se os 2 parametros necessarios foram passados
if [ ! "$#" -eq 2 ]; then
        echo "Numero de parametros incorretos!"
        echo "Digite: ./script.sh [<IP>||<NOME>] <ORA_SID>"
        exit 1
fi

##if [ $2 = PROD17 -o $2 = PROD18 ]
##then
##   LOGON=nagios/password/[EMAIL PROTECTED]
##else
##   LOGON=nagios/[EMAIL PROTECTED]
##fi

# Variaves do oracle
LOGON=nagios/[EMAIL PROTECTED]
ORACLE_SID=$2
ORACLE_HOME=/u02/app/oracle/OracleHomes/db10g
export ORACLE_HOME ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin
export PATH

# Entra no BD e gera o arquivo tbs_$2.txt que eh uma lista das tabelas
#e porcentagem de uso de cada uma.
sqlplus << FIM > /tmp/tbs_$2.txt
$LOGON
SET PAGES 2000
SET LINESIZE 120
COL "TOTAL KB" FORMAT 999999999.99
COL "OCUPADO KB" FORMAT 999999999.99
COL "LIVRE KB" FORMAT 999999999.99
SELECT A.TABLESPACE_NAME TABLESPACE,
ROUND(TOTAL,2) "TOTAL KB",
ROUND(FREE,2) "LIVRE KB",
ROUND(TOTAL-(FREE),2) "OCUPADO KB",
ROUND(((FREE*100)/TOTAL),2) "% LIVRE",
ROUND((((TOTAL-FREE)*100)/TOTAL),2) "% OCUPADO"
FROM
(SELECT TABLESPACE_NAME,SUM(BYTES)/1024 AS "TOTAL"
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME,SUM(BYTES)/1024 AS "FREE"
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME(+)
ORDER BY 1;
quit;
FIM

# Faz os testes se alguma tabela esta com mais de 90% ou 80% e retorna o status
#para o Nagios
TESTE1=`sed -n '/^---/,/^$/ p' /tmp/tbs_$2.txt | LC_ALL=pt_BR awk '$NF >= 90 
{print $1,$NF}'`
if [ -n "$TESTE1" ]
then
   echo "Tabela(s) estourando em $1.$2 - `echo $TESTE1` % ocupados"
   exit 2
fi

TESTE2=`sed -n '/^---/,/^$/ p' /tmp/tbs_$2.txt | LC_ALL=pt_BR awk '$NF >= 80 
{print $1,$NF}'`
if [ -n "$TESTE2" ]
then
   echo "Tabela(s) em alerta em $1.$2 - `echo $TESTE2` % ocupados"
   exit 1
else
   echo "Tabelas OK"
   exit 0
fi

###############****************##################*******************

Íkami Garajau de Castilho


----- Mensagem original ----
De: Jose Oliveira <[EMAIL PROTECTED]>
Para: Unofficial Brazilian (Portuguese) Nagios Users List 
<[email protected]>
Enviadas: Terça-feira, 11 de Setembro de 2007 11:54:48
Assunto: Re: [Nagios-users-br] Problemas com ORACLE...

Olá

Baixei este plugin e dei uma olhada nele...

No README ele manda alterar o script e setar tres variáveis:
ORACLE_ORATAB="/path/to/oratab"
ORACLE_USER="username"
ORACLE_PASS="password"

Voce fez isto ?

Me pareceu que este plugin é para rodar no servidor onde fica o Banco, pois
ele busca o ORACLE_HOME no ORATAB.

Eu uso um mais genérico aqui, que nós mesmo fizemos. Até já o mandei nesta
lista...


Abraços
JGeraldo


Em 11/09/07, guimba guimba <[EMAIL PROTECTED]> escreveu:
>
> Pessoal...
>   Passei um tempo sem poder mexer no nagios, eu estava com um problema no
> Nagios com a montoração do ORACLE.
>   Estrutura:
>   Servidor Nagios:
>    Nagios 3.0b3
>    Linux Red Hat Enterprise 4 2.6.9 ELhugemem
>    Cliente Oracle 10G
>
>   Servidor Oracle:
>    Windows2003
>    Oracle
>
>   Pelo servidor nagios consigo estabelecer conexão com o banco
> normalmente, tb tenho um arquivo tns.ora no servidor nagios
>
>   "su - oracle
>    sqlplus [EMAIL PROTECTED]
>    digita senha e abra a console.."
>
>
>   Para não destruir o servidor de produção montei este ambiente apenas pra
> testar o oracle antes de implementa-lo no servidor de produção.
>   O nagios esta funcionando, quando rodo a verificação da configuração não
> tenho problemas:
>   Checking services...
>           Checked 2 services.
>   Checking hosts...
>           Checked 1 hosts.
>   Checking host groups...
>           Checked 1 host groups.
>   Checking service groups...
>           Checked 0 service groups.
>   Checking contacts...
>           Checked 10 contacts.
>   Checking contact groups...
>           Checked 5 contact groups.
>   Checking service escalations...
>           Checked 0 service escalations.
>   Checking service dependencies...
>           Checked 0 service dependencies.
>   Checking host escalations...
>           Checked 0 host escalations.
>   Checking host dependencies...
>           Checked 0 host dependencies.
>   Checking commands...
>           Checked 29 commands.
>   Checking time periods...
>           Checked 2 time periods.
>   Checking for circular paths between hosts...
>   Checking for circular host and service dependencies...
>   Checking global event handlers...
>   Checking obsessive compulsive processor commands...
>   Checking misc settings...
>
>   Total Warnings: 0
>   Total Errors:   0
>
>   Things look okay - No serious problems were detected during the
> pre-flight check
>
>   Baixei dois plugins para o nagios do site www.nagiosexchange.org.
>   -check_oracle_tablespace.sh
>    -check_oracle_tbs
>
>   Copiei-os para pasta libexec dentro de /usr/local/nagios/libexec
>
>   Dei o comando ./check_oracle....... --help para verificar a sintaxe dos
> mesmos
>   Mesmo colocando a sintaxe correta, ou me retorna um erro, ou me retorna
> que o banco esta down...
>
>   Qual o plug-in que vcs utilizam pra este tipo de serviço??
>   Como fica a sintaxe dele???
>   Precisa instalar no servidor win2003???
>
>
>
>        Flickr agora em português. Você clica, todo mundo vê. Saiba mais.
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2005.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> --
> [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: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
-- 
[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: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
-- 
[email protected] mailing list
https://lists.sourceforge.net/lists/listinfo/nagios-users-br
Wiki: http://nagios-br.sf.net/wiki

Responder a