#!/bin/sh # # Copyright (C) 2000-2015 Kern Sibbald # License: BSD 2-Clause; see file LICENSE-FOSS # # # Check for zombie jobs (not terminated). # Also scan logs for ERROR messages # . ./config # check_for_zombie_jobs storage=STORAGE [client=localhost-fd] if [ $# = 2 ] ; then client="$2" else client="client" fi ${bin}/bconsole -c ${scripts}/bconsole.conf <&1 >/dev/null @output ${tmp}/dir.out status dir @output ${tmp}/fd.out status ${client} @output ${tmp}/sd.out status $1 @output quit END_OF_DATA export zstat grep "No Jobs running." ${tmp}/dir.out 2>&1 >/dev/null if [ $? != 0 ] ; then echo " " echo " !!!! Zombie Jobs in Director !!!!" echo " !!!! Zombie Jobs in Director !!!!" >>test.out if test "$debug" = "1" ; then cat ${tmp}/dir.out; fi echo " " zstat=1 exit 1 fi grep "No Jobs running." ${tmp}/fd.out 2>&1 >/dev/null if [ $? != 0 ] ; then echo " " echo " !!!! Zombie Jobs in File daemon !!!!" echo " !!!! Zombie Jobs in File daemon !!!!" >>test.out if test "$debug" = "1" ; then cat ${tmp}/fd.out; fi echo " " zstat=1 exit 1 fi grep "No Jobs running." ${tmp}/sd.out 2>&1 >/dev/null if [ $? != 0 ] ; then echo " " echo " !!!! Zombie Jobs in Storage daemon !!!!" echo " !!!! Zombie Jobs in Storage daemon !!!!" >>test.out if test "$debug" = "1" ; then cat ${tmp}/sd.out; fi echo " " zstat=1 exit 1 fi grep " READ " ${tmp}/sd.out 2>&1 >/dev/null if [ $? = 0 ]; then echo " " echo " !!!! Zombie \"Read\" Jobs in Storage daemon !!!!" echo " !!!! Zombie \"Read\" Jobs in Storage daemon !!!!" >>test.out if test "$debug" = "1" ; then cat ${tmp}/sd.out; fi echo " " zstat=1 exit 1 fi grep "ERROR" ${tmp}/log*.out 2>&1 >/dev/null if [ $? = 0 ] ; then echo " " echo " !!!! ERROR in log output !!!!" echo " !!!! ERROR in log output !!!!" >>test.out grep "ERROR" ${tmp}/log*.out echo " " zstat=1 exit 1 fi grep "Fatal Error" ${tmp}/log*.out 2>&1 >/dev/null if [ $? = 0 ] ; then echo " " echo " !!!! Fatal Error in log output !!!!" echo " !!!! Fatal Error in log output !!!!" >>test.out grep "Fatal Error" ${tmp}/log*.out echo " " zstat=1 exit 1 fi grep "glibc detected" ${tmp}/log*.out 2>&1 >/dev/null if [ $? = 0 ] ; then echo " " echo " !!!! glibc detected Error in log output !!!!" echo " !!!! glibc detected Error in log output !!!!" >>test.out grep "glibc detected" ${tmp}/log*.out echo " " zstat=1 exit 1 fi