So I have a script that looks through a log for a list of words then sends an email with the results. I would like to expand this to do the same for other logs in the same directory but make it a new email with each log. How would I do that?
Code:
LOG="pdb.lg psmseis.lg psyseis.lg" <----- These are the 3 logs I want it to look through but currently it only looks at the first
# REPORT_NAME is where the information to be sent is written to.
REPORT_NAME='/tmp/pdb.lg_report'
# LOGDIR is the directory containing the log.
LOGDIR="/pdb1"
# LIST is the errors being searched for.
LIST="
abnormal
allow*
attempt*
beyond
cannot
corrupt*
damage*
dead
died
disappear*
drastic
enough
error
exceed*
fail*
fatal
illegal
impossible
increase
insufficient
invalid
kill*
missing
overflow*
stget
stop
system
unable
unexpected*
unknown
violation
warn
wrong
"
#------------------------------------------------------------------------------
# PROCESSING SECTION
#------------------------------------------------------------------------------
rm ${REPORT_NAME}
for words in $LIST
do
RESULTS=`grep -i ${words} ${LOGDIR}/${LOG} | grep -v 'exceeded. Automatically increasing from'`
if [[ ${RESULTS} > "" ]]
then
echo -e "\n----------------------------------------------------------------------------" >> ${REPORT_NAME}
echo -e "SEARCH PATTERN = ${words}" >> ${REPORT_NAME}
echo -e "----------------------------------------------------------------------------" >> ${REPORT_NAME}
grep -i ${words} ${LOGDIR}/${LOG} >> ${REPORT_NAME}
fi
done
#------------------------------------------------------------------------------
# END OF PROCESSING SECTION
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
# EMAILING SECTION
#------------------------------------------------------------------------------
MESSAGE_HEADER="Please check these possible errors from the /pdb1/pdb.lg log.\n"
MESSAGE_BODY=`cat ${REPORT_NAME}`
MESSAGE_TAIL="\n\nThis email is from ${0}."
MESSAGE="${MESSAGE_HEADER}${MESSAGE_BODY}${MESSAGE_TAIL}"
SUBJECT="ERROR REPORT from ${LOGDIR}/${LOG}"
for USER in ${USERLIST}
do
echo -e "${MESSAGE}" | mailx -s "${SUBJECT}" ${USER}
done
Moderator's Comments:
Please use code tags when posting data and code samples!
Last edited by vgersh99; 04-17-2020 at 01:56 PM..
Reason: code tags, please!
ok, i have a script which i use to search my process' for specific keywords and kill any process containing them. there is a prompt to enter a keyword for searching and another prompt for which user you want to search the process' of. i want the script to have something that if you entered a search... (1 Reply)
Hi,
I want to write a script which will count the occurence of several different strings in a log file? Can anyone help me with this? Thanks in advance! (1 Reply)
Hi Gurus,
I am new to unix and need your help to make a shell script. I have a requirement, would appreciate if you could please help me on it:
Requirement:
-------------
I will pass 2 parameters in shell script 1). Directory name say errors 2). file extension say .log
First of all this... (4 Replies)
Hi,
Have to check log file for yesterday, I have tried this script, but it is showing error as -d illegal option.
res=max_total`date -d'yesterday'+%y%m%d`.log
res=max_total`date +%y%m%d`.log
this is working fine for today.
Please help me on this.
Thanks in advance,
Neha. (3 Replies)
Hi, Gurus,
I need a scripts to check specified file if it exists or not at certain time (say every month between 5th and 7th). if file exists do something otherwise do another thing.
can anybody help this?
Thanks in advance
:wall: (3 Replies)
I haven't coded in ksh in forever and this script is proving me not a great coder. I keep getting unexpected end of file when I try to execute this...Line 94 is the last line of the code..
#!/usr/bin/ksh
. /home/oraprod/.bash_profile
DBSID=prod # Database sid
CONNECTSTR=apps/xxxxxxxx@prod #... (6 Replies)
Hello,
Few days ago I found a person checking his mail log by AWK. But unfortunately I forget to take the command from him. Today I got to need that command badly. Here is a reference.
When I check from my mail log like this it will not show me the details.
grep "from=<noreply@panix.com>"... (2 Replies)
Hi,
I want to write a script which continuously checking status of a script running in background by nohup command. And if same script is not running then immediately start the script...please help..
i am using below command to run script
nohup system_traps.sh &
but in some... (9 Replies)
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)