I've found a way to correct the way the second agent is running… These changes to InitGlobalLogItem make sure that the second agent gets logged correctly.
Sub InitGlobalLogItem ()
'** initialize the global LogItem, if it hasn't been initialized already<br/>
On Error Goto processError<br/>
<br/>
If (logDb Is Nothing) Then<br/>
if not (globalLogItem is nothing) then
Delete globalLogItem<br/>
end if
End If<br/>
<br/>
If (globalLogItem Is Nothing) Then<br/>
Set globalLogItem = New LogItem<br/>
End If<br/>
<br/>
Exit Sub<br/>
<br/>
processError:
DebugPrint(StandardErrorMessage(Err, Erl, Error$, Getthreadinfo(1)))<br/>
Resume Next<br/>
<br/>
End Sub
*Minor correction on 8/2/07 because deleting GlobalLogItem when it is nothing is not a good idea.