render slave times to a text file in render folder

Hey Guys,
there’s a copy/paste function in deadline, where artist highlight the slaves and copy/paste into say notepad++, so they can see the render times per slave (deadline emails an average, but they want more granular numbers), if it was possible to have something like once the job is complete artist gets a record of the render times per machine which they can look at down the road (as all those values go away when the job is cleared) to troubleshoot stuff.

Was curious to know can we have this functionality added in the job completion email sender code.

~Abhijeet

Hello Abhirjeet,

Currently, the emails that we auto send are hard coded and cannot be modified. However, you could possibly write an onjobcomplete event script to send a separate email with that info you are wanting, though it could be tricky to get the right deadline user and their email.

Hey Dwight,
As you suggested wrote a onjobfinished event, and managed to get the username and email address but its not able to find the task information to extract the render time per task.Any ideas what im missing.

~Abhijeet

ok so i was looking into the job reports and they error out saying,

2015-05-26 18:41:15: BEGIN - blah\blah
2015-05-26 18:41:15: An error occurred in the “OnJobFinished” function in events plugin ‘MyEvent’: TypeError : No method matches given arguments (Python.Runtime.PythonException)
2015-05-26 18:41:15: File “none”, line 59, in OnJobFinished
2015-05-26 18:41:15: (Deadline.Events.DeadlineEventPluginException)
2015-05-26 18:41:15: at Deadline.Events.DeadlineEventPlugin.a(String A_0, Exception A_1)
2015-05-26 18:41:15: at Deadline.Events.DeadlineEventPlugin.OnJobFinished(Job job, String[] auxiliaryFilenames)
2015-05-26 18:41:15: at Deadline.Events.DeadlineEventManager.OnJobsFinished(Job[] jobs, DataController dataController)

but im following the same syntax as mentioned on the wikipages,

class MyEventListener(DeadlineEventListener):
def init(self):
self.OnJobFinishedCallback += self.OnJobFinished

## This is called when the job finishes rendering.
def OnJobFinished(self, job):
    # Make sure we have the latest job info
    job = RepositoryUtils.GetJob(job.ID, True)
    jobName = job.Name
    jobId = job.ID
    allTasks = RepositoryUtils.GetJobTasks(jobId, True)

Hi,
Here’s an example custom event plugin to calculate the job stats object on job completion, which I think will help you here:
github.com/ThinkboxSoftware/Dea … s/JobStats

Found the issue, it was me being stupid

allTasks = RepositoryUtils.GetJobTasks(jobId, True)

this was the mistake, i was passing job id instead of the job object.

Thanks for all the help guys.

~Abhijeet