aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2013-01-23 23:34:15 +0000
committerJustin Clark-Casey (justincc)2013-01-23 23:34:15 +0000
commit72dd3633eeb74c64620ffedb1618e732cbbca641 (patch)
tree4c2c544bdbc31b57003a60ed4a2b1beeaa320db8 /OpenSim/Region/ScriptEngine/Shared
parentIf ScriptStopStrategy hasn't been set to co-op in [XEngine] config, then cont... (diff)
downloadopensim-SC_OLD-72dd3633eeb74c64620ffedb1618e732cbbca641.zip
opensim-SC_OLD-72dd3633eeb74c64620ffedb1618e732cbbca641.tar.gz
opensim-SC_OLD-72dd3633eeb74c64620ffedb1618e732cbbca641.tar.bz2
opensim-SC_OLD-72dd3633eeb74c64620ffedb1618e732cbbca641.tar.xz
Improve logging by making it clearer which script is failing if an assembly fails to load.
Moves the noise co-op start/stop debug log messages to only display if xengine debug level >= 1 Logs which stop strategy is being used (abort or co-op) Adjusts some other logging to remove not very useful stuff
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs42
1 files changed, 23 insertions, 19 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
index 4cfcb75..5bc585e 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
@@ -284,9 +284,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
284 else 284 else
285 { 285 {
286 m_log.ErrorFormat( 286 m_log.ErrorFormat(
287 "[SCRIPT INSTANCE]: You must remove all existing script DLLs before using enabling co-op termination" 287 "[SCRIPT INSTANCE]: Not starting script {0} (id {1}) in part {2} (id {3}) in object {4} in {5}. You must remove all existing {6}* script DLL files before using enabling co-op termination"
288 + ", either by setting DeleteScriptsOnStartup = true in [XEngine] for one run" 288 + ", either by setting DeleteScriptsOnStartup = true in [XEngine] for one run"
289 + " or by deleting all *.dll* files in the relevant bin/ScriptEngines/<region-id>/ directory"); 289 + " or by deleting these files manually.",
290 ScriptTask.Name, ScriptTask.ItemID, Part.Name, Part.UUID, Part.ParentGroup.Name, Engine.World.Name, assembly);
290 291
291 return false; 292 return false;
292 } 293 }
@@ -324,8 +325,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
324 catch (Exception e) 325 catch (Exception e)
325 { 326 {
326 m_log.ErrorFormat( 327 m_log.ErrorFormat(
327 "[SCRIPT INSTANCE]: Error loading assembly {0}. Exception {1}{2}", 328 "[SCRIPT INSTANCE]: Not starting script {0} (id {1}) in part {2} (id {3}) in object {4} in {5}. Error loading assembly {6}. Exception {7}{8}",
328 assembly, e.Message, e.StackTrace); 329 ScriptTask.Name, ScriptTask.ItemID, Part.Name, Part.UUID, Part.ParentGroup.Name, Engine.World.Name, assembly, e.Message, e.StackTrace);
329 330
330 return false; 331 return false;
331 } 332 }
@@ -345,8 +346,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
345 catch (Exception e) 346 catch (Exception e)
346 { 347 {
347 m_log.ErrorFormat( 348 m_log.ErrorFormat(
348 "[SCRIPT INSTANCE]: Error loading script instance from assembly {0}. Exception {1}{2}", 349 "[SCRIPT INSTANCE]: Not starting script {0} (id {1}) in part {2} (id {3}) in object {4} in {5}. Error initializing script instance. Exception {6}{7}",
349 assembly, e.Message, e.StackTrace); 350 ScriptTask.Name, ScriptTask.ItemID, Part.Name, Part.UUID, Part.ParentGroup.Name, Engine.World.Name, e.Message, e.StackTrace);
350 351
351 return false; 352 return false;
352 } 353 }
@@ -401,15 +402,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
401 else 402 else
402 { 403 {
403 m_log.WarnFormat( 404 m_log.WarnFormat(
404 "[SCRIPT INSTANCE]: Unable to load script state file {0} for script {1} {2} in {3} {4} (assembly {5}). Memory limit exceeded", 405 "[SCRIPT INSTANCE]: Not starting script {0} (id {1}) in part {2} (id {3}) in object {4} in {5}. Unable to load script state file {6}. Memory limit exceeded.",
405 savedState, ScriptName, ItemID, PrimName, ObjectID, assembly); 406 ScriptTask.Name, ScriptTask.ItemID, Part.Name, Part.UUID, Part.ParentGroup.Name, Engine.World.Name, savedState);
406 } 407 }
407 } 408 }
408 catch (Exception e) 409 catch (Exception e)
409 { 410 {
410 m_log.ErrorFormat( 411 m_log.ErrorFormat(
411 "[SCRIPT INSTANCE]: Unable to load script state file {0} for script {1} {2} in {3} {4} (assembly {5}). XML is {6}. Exception {7}{8}", 412 "[SCRIPT INSTANCE]: Not starting script {0} (id {1}) in part {2} (id {3}) in object {4} in {5}. Unable to load script state file {6}. XML is {7}. Exception {8}{9}",
412 savedState, ScriptName, ItemID, PrimName, ObjectID, assembly, xml, e.Message, e.StackTrace); 413 ScriptTask.Name, ScriptTask.ItemID, Part.Name, Part.UUID, Part.ParentGroup.Name, Engine.World.Name, savedState, xml, e.Message, e.StackTrace);
413 } 414 }
414 } 415 }
415// else 416// else
@@ -598,9 +599,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
598 } 599 }
599 else 600 else
600 { 601 {
601 m_log.DebugFormat( 602 if (DebugLevel >= 1)
602 "[SCRIPT INSTANCE]: Co-operatively stopping script {0} {1} in {2} {3}", 603 m_log.DebugFormat(
603 ScriptName, ItemID, PrimName, ObjectID); 604 "[SCRIPT INSTANCE]: Co-operatively stopping script {0} {1} in {2} {3}",
605 ScriptName, ItemID, PrimName, ObjectID);
604 606
605 // This will terminate the event on next handle check by the script. 607 // This will terminate the event on next handle check by the script.
606 m_coopSleepHandle.Set(); 608 m_coopSleepHandle.Set();
@@ -609,9 +611,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
609 // checking is implemented. May want to allow a shorter timeout option later. 611 // checking is implemented. May want to allow a shorter timeout option later.
610 if (workItem.Wait(TimeSpan.MaxValue)) 612 if (workItem.Wait(TimeSpan.MaxValue))
611 { 613 {
612 m_log.DebugFormat( 614 if (DebugLevel >= 1)
613 "[SCRIPT INSTANCE]: Co-operatively stopped script {0} {1} in {2} {3}", 615 m_log.DebugFormat(
614 ScriptName, ItemID, PrimName, ObjectID); 616 "[SCRIPT INSTANCE]: Co-operatively stopped script {0} {1} in {2} {3}",
617 ScriptName, ItemID, PrimName, ObjectID);
615 618
616 return true; 619 return true;
617 } 620 }
@@ -922,9 +925,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
922 } 925 }
923 else if ((e is TargetInvocationException) && (e.InnerException is ScriptCoopStopException)) 926 else if ((e is TargetInvocationException) && (e.InnerException is ScriptCoopStopException))
924 { 927 {
925 m_log.DebugFormat( 928 if (DebugLevel >= 1)
926 "[SCRIPT INSTANCE]: Script {0}.{1} in event {2}, state {3} stopped co-operatively.", 929 m_log.DebugFormat(
927 PrimName, ScriptName, data.EventName, State); 930 "[SCRIPT INSTANCE]: Script {0}.{1} in event {2}, state {3} stopped co-operatively.",
931 PrimName, ScriptName, data.EventName, State);
928 } 932 }
929 } 933 }
930 } 934 }