script help


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting script help
# 1  
Old 04-29-2008
script help

I am working on a script to check a log for an error, if it finds the error it sends to a file then emails an alert. My delima is, once the error happens it will be true all day and would report the same error through out the day. The script will be run from crontab. Si I think I need something that checks the time of the error also.

logfile format is servicename_PID.log-TodaysDate example.......
PRservice_921.log-2008.04.29
PRservice_1021.log-2008.04.29
PRservice_1091.log-2008.04.29
PRservice_1142.log-2008.04.29

Here is the script...
Code:
#!/bin/ksh

aday=$(date '+%Y.%m.%d')
logdir=/usr/PR/logs/
logname=PRservice*$aday
data=/usr/PR/tools/pscdata
mailto='admin@mybox.com'

### Step to check for error(s) and setup data file for alerting 
cd $logdir
grep "rollback failed" PRservice*$aday > $data

if [ -s "$data" ]; then
   echo "errors detected"
   echo "PR errors have been detected, please check the processes" >> $data
   mail $mailto < $data
else
   echo "no error detected"
fi

# 2  
Old 04-29-2008
Is there some date+time in the line with "rollback failed"?

Write the date+time of the last detected and sent error to a file like /var/lib/myscripts/alertscript.last. In every later run the script can compare, whether it's found new or older, known errors.
# 3  
Old 04-29-2008
I've done stuff like that.

Create a secondary log to indicate that an error notification was already sent, or that there is currently no error.

When you find an error, first check the contents of the secondary log to determine if this is a new error or not. If so, send the email and update the secondary log. If it's not new, do nothing.

If there is NOT an error, update the secondary log to clear out the prior error so the next error can be processed properly.

Alternatively, use the secondary log to record when and which type of email went out, so you can send a reminder and/or escalate the urgency and/or add recipients if the error doesn't get fixed.
Login or Register to Ask a Question

Previous Thread | Next Thread

5 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to block first bash script until second bash script script launches web server/site?

I'm new to utilities like socat and netcat and I'm not clear if they will do what I need. I have a "compileDeployStartWebServer.sh" script and a "StartBrowser.sh" script that are started by emacs/elisp at the same time in two different processes. I'm using Cygwin bash on Windows 10. My... (3 Replies)
Discussion started by: siegfried
3 Replies

2. Shell Programming and Scripting

Shell script works fine as a standalone script but not as part of a bigger script

Hello all, I am facing a weird issue while executing a code below - #!/bin/bash cd /wload/baot/home/baotasa0/sandboxes_finance/ext_ukba_bde/pset sh UKBA_publish.sh UKBA 28082015 3 if then echo "Param file conversion for all the areas are completed, please check in your home directory"... (2 Replies)
Discussion started by: ektubbe
2 Replies

3. UNIX for Dummies Questions & Answers

Calling a script from master script to get value from called script

I am trying to call a script(callingscript.sh) from a master script(masterscript.sh) to get string type value from calling script to master script. I have used scripts mentioned below. #masterscript.sh ./callingscript.sh echo $fileExist #callingscript.sh echo "The script is called"... (2 Replies)
Discussion started by: Raj Roy
2 Replies

4. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

5. Shell Programming and Scripting

create a shell script that calls another script and and an awk script

Hi guys I have a shell script that executes sql statemets and sends the output to a file.the script takes in parameters executes sql and sends the result to an output file. #!/bin/sh echo " $2 $3 $4 $5 $6 $7 isql -w400 -U$2 -S$5 -P$3 << xxx use $4 go print"**Changes to the table... (0 Replies)
Discussion started by: magikminox
0 Replies
Login or Register to Ask a Question