Progress not showing in deadline monitor

Hi guys,

For some of our Mental Ray submissions we use the command line argument “> /Users/Scratch/Logs/exampleLog.txt 2>&1” (without the " ") to output a text file log in a location that other people on the team can access and read.

This all works fine, however I’ve found that I can no longer see the job progress in the deadline monitor. Is there a way for us to create a separate log file where we need it, while still having deadline show the progress of the job?

Deadline parses the stdout to detect progress, so if it’s being redirected somewhere else, that explains why you’re not seeing the progress update.

Which OS to you render on? On Linux and OSX, you might be able to use tee:
linux.byexamples.com/archives/34 … ay-it-out/

I’m not sure if that will work in the context of Deadline, but I guess it’s worth a try. :slight_smile:

Cheers,

  • Ryan

Our render machines are all Windows. Is there a similar workaround in the Windows environment?

Found this:
chipstips.com/?p=129

If you have any developers available, another option might be to create a proxy executable that starts up the real process and passes on the render arguments. It could handle all stdout and print it to stdout as well as a file.

Cheers,

  • Ryan

Apologies for such a late reply. We’ve had people on holidays and a really busy period.

  • so, we have cygwin running on the render machines. I’m able to successfully ping google.com and tee in that to a text file in the cmd window with no errors.

However the command line arguments i’ve attempted to use have caused errors in deadline.

Previously we used:
“> C:\Scratch\Logs\exampleLog.txt 2>&1”

I’ve tried to use:
“2>&1 | tee -a /cygwin/C/Scratch/Logs/exampleLog.txt” (cygwin needs the path to be written like this)
and also:
“> exampleLog.txt 2>&1 | tee -a /cygwin/C/Scratch/Logs/”

But both of these produce errors in deadline. Do you know the exact syntax for the command line argument to use tee?

I really don’t have any experience using tee, but a couple ideas come to mind:

  1. Can you run tee from a normal windows command prompt, or can you only run it from a cygwin prompt? If it’s only visible to cygwin, that could explain the problem.
  2. Maybe you need to use the full path to tee in your command line.

Can you post the logs that contain the actual errors? That might help us figure out what’s going on.

Cheers,

  • Ryan

Hey Ryan.

  1. yep. tested on all render machines. “ping www.google.com 2>&1 | tee -a /cygdrive/c/myTestFolder/myLog.txt” works without a problem in the windows command prompt.

  2. Not quite sure what you mean. I’ve sent you an email with the details and errors we get within deadline. What makes things more interesting, is if we manually submit a mentalray job via cmd line we can get the tee to work. So maybe there’s something we’re doing wrong inside of deadline.

Hope that info helps.

Thanks for sending the log. I think the problem is where the tee argument is added to the command line arguments. This is from the log you sent me (I’ve modified the paths in case they contained sensitive info):

-verbose 5 -file_dir "X:\...\logFile_teeTest" 2>&1 | tee -a /cygdrive/X/../logFile_teeTest/logFile_teeTest.txt -render 1 1 "X:\..\logFile_teeTest.mi"

As you can see, the tee part is stuck in the middle of the render arguments. I would expect the arguments to look like this instead:

-verbose 5 -file_dir "X:\...\logFile_teeTest" 2>&1 -render 1 1 "X:\..\logFile_teeTest.mi" | tee -a /cygdrive/X/../logFile_teeTest/logFile_teeTest.txt

I’m guessing that you’re specifying the tee arguments as additional command line arguments in the submitter? These arguments can only be mental ray specific arguments, since they aren’t appended to the very end of the command line (this is because the mi file must be the last argument). You’ll have to modify the MentalRay plugin for Deadline to add the tee argument to the end of the command line. The main mental ray plugin file is \your\repository\plugins\MentalRay\MentalRay.py.

Hope this helps!

  • Ryan