Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Script DBVerify

Estas en el tema de Script DBVerify en el foro de Oracle en Foros del Web. Buenas gente, Tengo un script shell que genera un log con las llamadas al proceso de Oracle dbverify que verifica la integridad de cada datafile ...
  #1 (permalink)  
Antiguo 01/09/2011, 01:17
 
Fecha de Ingreso: agosto-2006
Mensajes: 174
Antigüedad: 18 años, 3 meses
Puntos: 2
Script DBVerify

Buenas gente,

Tengo un script shell que genera un log con las llamadas al proceso de Oracle dbverify que verifica la integridad de cada datafile que compone mi base de datos. El resultado de la verificacion por datafile lo arrojo a un fichero de salida, para su posterior analisis en busca de algun dato corrupto o cualquier desperfecto a nivel de datos, pero este proceso es manual, ya que tengo que ir mirando el log y viendo que los valores de "Total Pages Failing (Data)", "Total Pages Failing (Index)", "Total Pages Marked Corrupt" y "Total Pages Influx" no tengan valores diferentes a 0.

Lo que me interesaria es que dentro del mismo script me escaneara si el valor de algun de estos valores es mayor a 0, y si es asi, pues ejecutar por ejemplo, mandar un correo notificando que hay errores en algun bloque de datos.

Donde me pierdo es en este segundo paso, es decir, en como usar un grep y que me analice si existe algun valor diferente a 0 dentro de todo el log.

Saludos
  #2 (permalink)  
Antiguo 05/09/2011, 10:53
 
Fecha de Ingreso: noviembre-2007
Ubicación: Argentina
Mensajes: 134
Antigüedad: 17 años
Puntos: 3
Respuesta: Script DBVerify

Entiendo lo que necesitas, no es complicado de realizar.

Necesitas conocimiento sobre como usar grep, sed y en lo posible awk.

Te paso un posible metodo:

1° hacer grep de tu log, por ejemplo con 'Pages' que esta en las lineas que necesitas, si despues de probarlo trae algunas de mas, aplica nuevamente grep para filtrar hasta que solo obtengas las lineas que necesitas.

2° Awk es la soluciona a tu problema, armas un script que traiga el ultimo campo, que si no entendi mal, es el valor que necesitas.
En AWK esto es facil, porque la variable $NF devuelve el ultimo valor de la linea.

Tambien puedes encontrar algo de ayuda en el foro de Unix.
No te olvides de anexar el log, seria de mucha ayuda.

Exitos.
Saludos,
Mario.
__________________
Y venció David al filisteo con honda y piedra; e hirió al filisteo y lo mató, sin tener David espada en su mano.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:36.