#!/sbin/sh # # Script to startup / shutdown logsurfer on Solaris # # ToDo : run under another userid # LOGSURFER_HOME=/var/logsurfer LOGSURFER=$LOGSURFER_HOME/bin/logsurfer LOGSURFER_CONFFILE=$LOGSURFER_HOME/etc/logsurfer.conf LOGSURFER_PIDFILE=$LOGSURFER_HOME/dump/logsurfer.pid LOGSURFER_LOGFILE=$LOGSURFER_HOME/log/logsurfer.log LOGSURFER_DUMPFILE=$LOGSURFER_HOME/dump/logsurfer.dump # # Log file for logsurfer stdout, stderr LOGSURFER_LOG=$LOGSURFER_HOME/log/logsurfer.log # # Syslog file to monitor # SYSLOG_FILE=/var/log/syslog case "$1" in 'start') # Start from the current last line of the log file CURRENT_LOG_POS=`wc -l <$SYSLOG_FILE` echo "Logsurfer starting to monitor $SYSLOG_FILE from line $CURRENT_LOG_POS" nohup $LOGSURFER -c $LOGSURFER_CONFFILE \ -d $LOGSURFER_DUMPFILE -f \ -l $CURRENT_LOG_POS -p $LOGSURFER_PIDFILE \ $SYSLOG_FILE >$LOGSURFER_LOG 2>&1 & ;; 'stop') kill -TERM `cat $LOGSURFER_PIDFILE` ;; 'dump') # Dump internal start kill -USR1 `cat $LOGSURFER_PIDFILE` ;; 'reopen') # reopen the input logfile kill -HUP `cat $LOGSURFER_PIDFILE` ;; 'restart') # Restart for config file change # Start from the current last line of the log file CURRENT_LOG_POS=`wc -l <$SYSLOG_FILE` kill -TERM `cat $LOGSURFER_PIDFILE` sleep 3 nohup $LOGSURFER -c $LOGSURFER_CONFFILE \ -d $LOGSURFER_DUMPFILE -f \ -l $CURRENT_LOG_POS -p $LOGSURFER_PIDFILE \ $SYSLOG_FILE >$LOGSURFER_LOG 2>&1 & ;; *) echo "Usage: $0 { start | stop | dump | reopen }" exit 1 ;; esac exit 0