Jun 18, 2026, 10:16 AM
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
# modify by Puppet !!!
|
||||
# verze:2.1
|
||||
# defunije funkce pushLog() Notify() makePID() removePID()
|
||||
# autor: Ales Cernik
|
||||
#
|
||||
|
||||
myScript=${0##*/}
|
||||
#myPath="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #"
|
||||
export logDir=${logDir:="/opt/log"}
|
||||
[ ! -d $logDir ] && logDir="/srv/log"
|
||||
[ ! -d $logDir ] && { "Neexistuje $logDir"; exit 1;}
|
||||
logFile=${logDir}/${myScript}.log
|
||||
myHost=$(/bin/hostname -a)
|
||||
NAGIOSHOST="centreon.bisnode.cz"
|
||||
lock_file=/tmp/${myScript}.pid
|
||||
|
||||
pushLog () {
|
||||
echo "$1 $2 $3 $4 $5 $6 $7 $8 $9" >>$logFile
|
||||
}
|
||||
|
||||
Notify () { # $1 - status 0=OK, 1=Warning, 2=Error $2 message
|
||||
if [ ${NAGIOSHOST} != "" ]; then
|
||||
pushLog $2
|
||||
/bin/echo -e "${myHost};${myScript};${1};${2}" | /usr/sbin/send_nsca -H ${NAGIOSHOST} -d \;
|
||||
fi
|
||||
}
|
||||
|
||||
## vyhradni spousteni procesu
|
||||
makePID () {
|
||||
cat /dev/null >> $lock_file || { Notify 2 "nelze udelat PID file"; exit 1;}
|
||||
read lastPID < $lock_file
|
||||
# if lastPID is not null and a process with that pid exists , exit
|
||||
[ ! -z "$lastPID" -a -d /proc/$lastPID ] && exit
|
||||
[ -z $$ ] && { Notify 2 "Chybi PID parametr" ; exit 1; }
|
||||
echo $$ > $lock_file || { Notify 2 "Nelze zapsat PID" ; exit 1; }
|
||||
}
|
||||
|
||||
removePID () {
|
||||
rm $lock_file
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user