Test Page

From OpenSimulator

Revision as of 12:31, 11 August 2008 by Sacha Magne (Talk | contribs)

Jump to: navigation, search

Open Sim Watchdog Script

This is a small script to watch for an OpenSim region simulator under screen in Linux. If the process is missing, a new instance will be started.

oswatchdog

#!/bin/sh
#
# THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
#
#
# Adjust To Your System:
#
# Sample Cron Entry: Runs Each Minute 24/7/365
# */1 * * * * exec /opt/opensim/scripts/oswatchdog
#
#
#
# Where Does Your OpenSim Installation Live?
BASE="/opt/opensim"
# Where Do You Run OpenSim.exe From?
RUN="$BASE/production/bin"
# Where Do You Want To Log Events To?
LOG="$BASE/log"
# Where Is Your Screen Binary?
SCREEN="/usr/bin/screen"
 
 
#if the file exist, opensim won't be restarted
# Sacha Magne
LOCKFILE="/tmp/norun.opensim"
 
if [ -f "$LOCKFILE" ]; then
  echo $LOCKFILE "found. no restart"
  exit
fi
 
 
# Check For For Our Screen Process, Named OSG
running=`ps ax|grep OSG|grep -v grep`
 
# If The Process Is Not There...
if [ -z "$running" ]; then
				#...We Make A Log Entry And Start A New One
	# The Log Entry
	TIME="Simulator Down, Restarting: `/usr/bin/date +"%A, %B %d - %r"`"
 
	echo $TIME >>$LOG/OSGReport.txt
	cd $RUN
	$SCREEN -S OSG -d -m mono OpenSim.exe
fi
# All Done 'Till Next Time
Personal tools
General
About This Wiki