Skip to content

Recent errors in database alert log

 #!/bin/ksh
 printf "Enter Destination File: "
 read dest
 files="/*/u??/oradata/$ORACLE_SID/oralogs -name alert_$ORACLE_SID.log"
 for file in $(find $files)
 do
     DT=$(date)
     awk '
     BEGIN {Flg=0}
     NR==1 {
         R=split(DATE,TMP," ")
         Day=TMP[[1]]
         Month=TMP[[2]]
         NoDay=TMP[[3]]
     }
     {NoDayM=NoDay-1}
     NF==5 && $2==Month && ($3==(NoDayM) || $3==(NoDayM)) {Flg=1}
     Flg==1 {print $0}
     ' DATE="$DT" $file | awk '
     /^ORA-/ || /cannot/ {print DATE print $0}
     NF==5 {DATE=$0}
     ' >> $dest
 done
 exit 0