Depending on your process, it might be work creating a queue.
That said if you are working through a collection of items inside the process without a queue is probably some specific point where you loop through them.
- Identify the start and end of each 'item' or maybe add a note that includes the work item ID, START/END, and a timestamp
- Extract the log
- Remove all the columns except the start/end
- use excel to get the time diff between the resource start of hte 'Start' event and the resource end time of the 'End' event.
If you don't want to go extracting logs, if you have a mirror of the DB set up, you can query it directly:
------START OF MS SQL CODE
use   XXXXXXXX;   -- Replace this with the name of your DB
go
 
Declare     @SessionNumber as int;
set         @SessionNumber = 999999;      --    Replace this value with the session number found in the control room
 
Declare     @ProcessName as varchar(60);
set         @ProcessName = 'ABCDEF';
set         @ProcessName = 'Standing Orders - Main Process'
 
select     
            LG.SessionNumber
            ,LG.StageName
            ,LG.ProcessName
            ,LG.PageName
            ,LG.StartDateTime
            ,LG.EndDateTime
           
from  [dbo].[BPASessionLog_NonUnicode] as LG
 
--where     LG.SessionNumber = @SessionNumber
--where     LG.ProcessName = @ProcessName
;
------END OF MS SQL CODE