AWS Thinkbox Discussion Forums

error handling

Hi there,

Would you have any advice on how to catch multi-line errors?
We usually get printouts that include a traceback, where the first line notes that we have a critical error, then follows the traceback in multiple lines. If i set the ‘critical error’ to be handled by deadline, it cuts off the log before the traceback, so it makes troubleshooting the problem harder.

Here is an example:

0: STDOUT: Mon Jan 28 13:53:35 2013 (+498ms) : debug : Registering Node Class : “ScanlineScript”
0: STDOUT: Mon Jan 28 13:53:35 2013 (+36ms) : critical error : Error in Maya startup: Traceback (most recent call last):
0: STDOUT: File “C:\svnTools\trunk\S2\exchange\software\managed\SoftwareConfiguration\mayaShared\env\configs\default\modules\mayaStartup.py”, line 50, in mayaStartup
0: STDOUT: evaluateAllScNodes()
0: STDOUT: File “C:\svnTools\trunk\S2\exchange\software\managed\SoftwareConfiguration\mayaShared\env\configs\default\modules\mayaStartup.py”, line 39, in evaluateAllScNodes
0: STDOUT: from scNodes import core, publish, rigs, models, cameras, alembic, images, mocapAnimation, rigCache, resourceList, mayaScene, nullAnimation, xmesh, mayaRigCache
0: STDOUT: File “C:\svnTools\trunk\S2\exchange\software\managed\SoftwareConfiguration\mayaShared\env\configs\default\modules\scNodes\publish.py”, line 24, in
0: STDOUT: import scl.farm.submission
0: INFO: Deadline is ignoring error: “ImportError: No module named farm.submission” because plugin setting Strict Error Checking is enabled and this error is not usually fatal.
0: STDOUT: ImportError: No module named farm.submission

Anything after the bold/italic line would be cut off if we enable the ‘critical error’ string to fail the task.

Hey Laszlo,

Are you able to have the script exit with a non-zero exit code? By default, Deadline will fail a render if the executable returns a non-zero exit code. If you can, then you don’t have to worry about watching for specific output.

Cheers,

  • Ryan

Is it enough if it returns a number? Its a mayabatch scriptjob. While we were running it via actual mayaBatch from a command line, i had a non-zero exit code in the script. But if i quit maya from the script even with a 0 as its exitcode, deadline thought maya unexpectedly quit.

Maybe you could have the script just exit Maya when an error occurs? If that makes Deadline think that Maya has exited unexpectedly, that should work fine.

Ill experiment with this suggestion.

Currently the python crashes can happen in any one of our pipeline scripts (we usually let the exceptions go through so that an error can be reported to the user and for troubleshooting it), so exiting right away would probably not be an option as that would quit maya in interactive sessions too. But maybe i could just wrap the main trigger melscript in a try/catch.

Privacy | Site terms | Cookie preferences