Smart Prestart WIN
From OpenSimulator
(page positioning changed - this page will be the subpage of Automating Tasks) |
m (Robot: Replacing 'OpenSim' to 'OpenSimulator', which is the precise name) |
||
(2 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{Quicklinks}} |
− | '''Starting | + | '''Starting OpenSimulator with a little Pre-Processing''' |
I created this Batch File to run a couple of things for me on startup and thought it would be good to share the base of it for others to be able to further better manage their systems. I like to review my OpenSim.Log when I do a Startup and as you know, that thing becomes a Monster very fast ! BTW: It's also not good to open the "Live Log" when the system is running because it can cause the console to lockup (hate file locking @ times). | I created this Batch File to run a couple of things for me on startup and thought it would be good to share the base of it for others to be able to further better manage their systems. I like to review my OpenSim.Log when I do a Startup and as you know, that thing becomes a Monster very fast ! BTW: It's also not good to open the "Live Log" when the system is running because it can cause the console to lockup (hate file locking @ times). | ||
− | <br> | + | <br /> |
− | *'''What this does is described in the batch file, in a nutshell:<br>''' | + | * '''What this does is described in the batch file, in a nutshell:<br />''' |
Presets a TimeStamp for Date@HourMinute | Presets a TimeStamp for Date@HourMinute | ||
− | *Copies \bin\opensim.log or \bin\opensim.32bitLaunch.log to the backup folder structure as defined. | + | * Copies \bin\opensim.log or \bin\opensim.32bitLaunch.log to the backup folder structure as defined. |
− | *''The DEFAULT is C:\OpenSim\InstanceA\BACKups\LOGS'' | + | * ''The DEFAULT is C:\OpenSim\InstanceA\BACKups\LOGS'' |
− | *Next, it renames the copied opensim.log to OSLOG_(14052009@1100).log so now it is Date@HourMinute stamped in the filename. | + | * Next, it renames the copied opensim.log to OSLOG_(14052009@1100).log so now it is Date@HourMinute stamped in the filename. |
− | *Next, it clears the \bin\opensim.log and inserts "LOG_CLEARED AT 14052009@1100" as the first line in the file. | + | * Next, it clears the \bin\opensim.log and inserts "LOG_CLEARED AT 14052009@1100" as the first line in the file. |
− | *WHY? Easier to track startup issues / debugging and helps reduce size of live opensim.log | + | * WHY? Easier to track startup issues / debugging and helps reduce size of live opensim.log |
− | *Creates backup structure under the instance to store critical files for recovery & tracking | + | * Creates backup structure under the instance to store critical files for recovery & tracking |
− | *Copies critical files into backup structure (*.db, *.ini, exports, regions files ini or xml) | + | * Copies critical files into backup structure (*.db, *.ini, exports, regions files ini or xml) |
− | *OPTIONALLY BACKS UP MYSQL DB | + | * OPTIONALLY BACKS UP MYSQL DB |
− | *Changes directory to the \BIN folder and starts OpenSim.exe | + | * Changes directory to the \BIN folder and starts OpenSim.exe |
− | <br> | + | <br /> |
− | '''INSTALLATION: <br>''' | + | '''INSTALLATION: <br />''' |
− | *Startup with a shortcut as you would with standard opensim.exe, just start this batch file instead instead of opensim.exe | + | * Startup with a shortcut as you would with standard opensim.exe, just start this batch file instead instead of opensim.exe |
− | *'''!!''' Remember to set the 5 Important Variables for your paths at the top of the batch file as shown below: | + | * '''!!''' Remember to set the 5 Important Variables for your paths at the top of the batch file as shown below: |
− | *'''OPTIONALLY''' Now Also dumps MySql DataBase SEE Header in batchfile | + | * '''OPTIONALLY''' Now Also dumps MySql DataBase SEE Header in batchfile |
− | SET OSbackup=C:\OpenSim\InstanceA\BACKups<br>SET OSbinSrc=C:\OpenSim\InstanceA\bin<br>set DBUSER=root<br>set DBPW=YOURPASSWORD<br>set DBNAME=opensim | + | SET OSbackup=C:\OpenSim\InstanceA\BACKups<br />SET OSbinSrc=C:\OpenSim\InstanceA\bin<br />set DBUSER=root<br />set DBPW=YOURPASSWORD<br />set DBNAME=opensim |
− | <br>That's it... Nice & Easy, always a clean log when you startup and a copy of the previous log stored for you to review | + | <br />That's it... Nice & Easy, always a clean log when you startup and a copy of the previous log stored for you to review |
THE BATCHFILE '''Start_OS.BAT''' | THE BATCHFILE '''Start_OS.BAT''' | ||
Line 61: | Line 61: | ||
:: | :: | ||
:: OSbackup = Where you want your Backup File Structure to be and send files to | :: OSbackup = Where you want your Backup File Structure to be and send files to | ||
− | :: OSbinSrc = Where the | + | :: OSbinSrc = Where the OpenSimulator Software is installed and run from |
:: | :: | ||
SET OSbackup=C:\OPENSIM\instanceA\BACKups | SET OSbackup=C:\OPENSIM\instanceA\BACKups | ||
Line 97: | Line 97: | ||
:: ============================================== | :: ============================================== | ||
:: | :: | ||
− | :: if folders do not exist, create them for this | + | :: if folders do not exist, create them for this OpenSimulator Instance |
:: | :: | ||
:: | :: |
Latest revision as of 22:59, 3 March 2012
Starting OpenSimulator with a little Pre-Processing
I created this Batch File to run a couple of things for me on startup and thought it would be good to share the base of it for others to be able to further better manage their systems. I like to review my OpenSim.Log when I do a Startup and as you know, that thing becomes a Monster very fast ! BTW: It's also not good to open the "Live Log" when the system is running because it can cause the console to lockup (hate file locking @ times).
- What this does is described in the batch file, in a nutshell:
Presets a TimeStamp for Date@HourMinute
- Copies \bin\opensim.log or \bin\opensim.32bitLaunch.log to the backup folder structure as defined.
- The DEFAULT is C:\OpenSim\InstanceA\BACKups\LOGS
- Next, it renames the copied opensim.log to OSLOG_(14052009@1100).log so now it is Date@HourMinute stamped in the filename.
- Next, it clears the \bin\opensim.log and inserts "LOG_CLEARED AT 14052009@1100" as the first line in the file.
- WHY? Easier to track startup issues / debugging and helps reduce size of live opensim.log
- Creates backup structure under the instance to store critical files for recovery & tracking
- Copies critical files into backup structure (*.db, *.ini, exports, regions files ini or xml)
- OPTIONALLY BACKS UP MYSQL DB
- Changes directory to the \BIN folder and starts OpenSim.exe
INSTALLATION:
- Startup with a shortcut as you would with standard opensim.exe, just start this batch file instead instead of opensim.exe
- !! Remember to set the 5 Important Variables for your paths at the top of the batch file as shown below:
- OPTIONALLY Now Also dumps MySql DataBase SEE Header in batchfile
SET OSbackup=C:\OpenSim\InstanceA\BACKups
SET OSbinSrc=C:\OpenSim\InstanceA\bin
set DBUSER=root
set DBPW=YOURPASSWORD
set DBNAME=opensim
That's it... Nice & Easy, always a clean log when you startup and a copy of the previous log stored for you to review
THE BATCHFILE Start_OS.BAT
@echo off :: FILENAME: Start_OS.BAT :: AUTHOR: WhiteStar Magic @ OSGrid :: DATE: REVISED Nov-24.2010 :: :: DESCRIPTION: Starts OpenSim.exe with some preprocessing :: - copies opensim.log from BIN\ folder to Log Backup & renames it to OSLOG_Date@time.log :: - example of output OSlog_(24-11-2010@23-27).log OR OSlog32_(24-11-2010@23-27).log :: - then it CLEARS the log to EMPTY in the \BIN folder so you can see everything from startup :: - WHY? Easier to track startup issues / debugging and helps reduce size of live opensim.log :: - Creates backup structure under the instance to store critical files for recovery & tracking :: - Copies critical files into backup structure :: - BACKS UP MYSQL DB :: :: INSTALLATION: :: Startup with a shortcut as you would with standard opensim.exe, just start this batch file instead :: MODIFY the bottom lines to adjust for starting OpenSim.exe OR OpenSim.32BitLaunch.exe :: :: DEPENDENCIES: uses Robocopy.exe (Windows Application) free from Microsoft if not in your installation :: SYSTEM IMPACT: None Known :: TESTED ON: Windows Vista, Windows-7RC, WINDOWS SERVER 2008-R1(64bit) :: Other Windows Operating Systems should have no issue (untested) but they are consistent for this type of function :: ================================================================================================================= :: CONFIGURING ENVIRONMENT PATHS AND SETUP TO SIMPLIFY CONFIG & ADMIN :: Adjust the following to YOUR INSTALLED Folder Paths :: :: OSbackup = Where you want your Backup File Structure to be and send files to :: OSbinSrc = Where the OpenSimulator Software is installed and run from :: SET OSbackup=C:\OPENSIM\instanceA\BACKups SET OSbinSrc=C:\OPENSIM\instanceA\bin :: :: MYSQL INFORMATION TO BE FILLED OUT. IF DBUSER = XXX MySql Dump will not occur set DBUSER=root set DBPW=PASSWORD set DBNAME=opensim :: :: -------------------------------------------------------------------------------------- :: DATE & TIME String Assembly :: -------------------------------------------------------------------------------------- :: Date & Time Format on your system :: Check your format in command.prompt with DATE/T :: :: EU DATE FORMAT = 15-05-2006 DD-MM-YYYY :: US DATE FORMAT = 05/17/2006 MM/DD/YYYY :: TIME FORMAT 13:45:55 is truncated to 13-45 and colons are removed :: DATES are cleaned of / or - or : depending on your system install & config. :: :: Parse Hour & Minutes Removing incorrect characters or leading spaces :: i=HR, j=min, k=sec,l=msec for /F "usebackq tokens=1,2,3,4 delims=/-:. " %%i in ('%TIME%') do set Ttime=%%i-%%j :: :: Parse the Date String removing unwated characters / or - or 'space' depends on system installation for /F "usebackq tokens=1,2,3,4 delims=/-: " %%i in ('%DATE%') do set Tdate=%%i-%%j-%%k :: set TimeStamp=%Tdate%@%Ttime% :: we now have a string which will appear as 24-11-2010@23-27 :: -------------------------------------------------------------------------------------- echo TimeStamp = %TimeStamp% :: ============================================== :: OPENSIM SYSTEM DATA BACKUP SECTION :: ============================================== :: :: if folders do not exist, create them for this OpenSimulator Instance :: :: if not exist %OSbackup%\*.* md %OSbackup% if not exist %OSbackup%\DB\*.* md %OSbackup%\DB if not exist %OSbackup%\DBsql\*.* md %OSbackup%\DBsql if not exist %OSbackup%\EXPORTS\*.* md %OSbackup%\EXPORTS if not exist %OSbackup%\INI\*.* md %OSbackup%\INI if not exist %OSbackup%\LOGS\*.* md %OSbackup%\LOGS if not exist %OSbackup%\OAR\*.* md %OSbackup%\OAR if not exist %OSbackup%\REGIONS\*.* md %OSbackup%\REGIONS if not exist %OSbackup%\TERRAINS\*.* md %OSbackup%\TERRAINS if not exist %OSbackup%\TXT\*.* md %OSbackup%\TXT if not exist %OSbackup%\XML2\*.* md %OSbackup%\XML2 :: !! Copy Critical Files !! robocopy %OSbinSrc% %OSbackup%\DB *.DB /S /LOG:%OSbackup%\DBlog.txt robocopy %OSbinSrc%\Exports %OSbackup%\EXPORTS *.* /S /LOG:%OSbackup%\EXPORTSlog.txt robocopy %OSbinSrc% %OSbackup%\INI *.ini /S /LOG:%OSbackup%\INIlog.txt robocopy %OSbinSrc%\Regions %OSbackup%\REGIONS *.* /S /LOG:%OSbackup%\REGIONSlog.txt robocopy %OSbinSrc% %OSbackup%\TXT *.txt /S /LOG:%OSbackup%\TXTlog.txt :: :: :: generate MySql DB Backup if DBUSER NEQ XXX mysqldump --opt -u%DBUSER% -p%DBPW% %DBNAME% > %OSbackup%\DBsql\%DBNAME%.sql :: if exist %OSbinSrc%\OpenSim.32BitLaunch.log copy %OSbinSrc%\OpenSim.32BitLaunch.log %OSbackup%\LOGS\OSlog32_(%TimeStamp%).log if exist %OSbinSrc%\OpenSim.log copy %OSbinSrc%\OpenSim.log %OSbackup%\LOGS\OSlog_(%TimeStamp%).log if exist %OSbinSrc%\XEngine.log copy %OSbinSrc%\XEngine.log %OSbackup%\LOGS\XEngine_(%TimeStamp%).log :: :: NEXT FLUSHING LOG to EMPTY if exist %OSbinSrc%\OpenSim.32BitLaunch.log >%OSbinSrc%\OpenSim.32BitLaunch.log echo "LOG_CLEARED AT %TimeStamp%" if exist %OSbinSrc%\OpenSim.log >%OSbinSrc%\OpenSim.log echo "LOG_CLEARED AT %TimeStamp%" if exist %OSbinSrc%\xengine.log >%OSbinSrc%\xengine.log echo "LOG_CLEARED AT %TimeStamp%" :: :: :: :: ============================================== :: STARTING OPENSIM SERVER :: ============================================== :: change directory to \bin to make sure and startup system as usual :: uncomment according to Operating System. OpenSim.exe = 32bit OS, OpenSim.32BitLaunch.exe = 64bit operating system :: cd %OSbinSrc% :: OpenSim.32BitLaunch.exe OpenSim.exe
Return to Automating Tasks