Link to home
Start Free TrialLog in
Avatar of dpeadmin
dpeadmin

asked on

DebugDiag Results

Hiya

I'm trying my best to figure out how to read the reports for Debug Diag..to no avail. IIS and such is not my area of expertise!

I've 3 items in a report that I'm looking at.

1. COM+ STA ThreadPool Report
Max STA Threads     25
Min STA Threads     4
Current STA Threads     12
g_activitiesPerThread     1
EmulateMTSBehavior     False
STA Threads In-Call     0  (none)
Note: There was an error collecting details for the COM+ STA Threadpool threads. The internal COM+ data structures may have been corrupted.

2. Thread 16 - System ID 1696
Entry point   pdm+8a00
Create time   19/02/2009 13:26:44
Time spent in user mode   0 Days 00:00:00.00
Time spent in kernel mode   0 Days 00:00:00.00
This thread is not fully resolved and may or may not be a problem. Further analysis of these threads may be required.
Function   Source
ntdll!KiFastSystemCallRet    
ntdll!NtWaitForMultipleObjects+c    
kernel32!WaitForMultipleObjectsEx+11a    
user32!RealMsgWaitForMultipleObjectsEx+141    
user32!MsgWaitForMultipleObjects+1f    
pdm+886c    
pdm+8a85    
pdm+8a09    
kernel32!BaseThreadStart+34    


3. Thread 44 - System ID 2848
Entry point   msvcrt!_endthreadex+2f
Create time   19/02/2009 13:27:33
Time spent in user mode   0 Days 00:00:00.300
Time spent in kernel mode   0 Days 00:00:00.200

This thread is making a database operation using ADO.
The call to MSADO15!CRECORDSET::GET_EOF originated from jscript!IDispatchInvoke2+b5

Function   Source
ntdll!KiFastSystemCallRet    
ntdll!NtWaitForSingleObject+c    
mswsock!SockWaitForSingleObject+3a    
mswsock!WSPRecv+203    
ws2_32!WSARecv+77    
wsock32!recv+31    
dbnetlib!ConnectionRead+3b6    
sqlsrv32!getbytes+1fa    
sqlsrv32!ProcessTDSStream+204    
sqlsrv32!ExecRPCImmediate+229    
sqlsrv32!ExtendedFetch+226    
sqlsrv32!FetchScroll+25a    
sqlsrv32!SQLFetchScroll+6b    
odbc32!SQLFetchScroll+112    
msdasql!CFetchRowsFetchScrollBmk::FetchRows+1d3    
msdasql!CRowset::FetchRows+2d    
msdasql!CImpIRowsetScroll::GetRowsAtBookmark+137    
msdasql!CImpIRowsetScroll::GetRowsAt+121    
msadrh15!CRowsetHelper::GetRowsAt+6c    
msado15!CRecordset::MoveAbsolute+2bb    
msado15!CRecordset::_MoveFirst+7c    
msado15!CRecordGroup::GetDeferredHRow+41    
msado15!CRecordset::GetDeferredHRow+1d    
msado15!CRecordset::_get_EOF+1e    
msado15!CRecordset::get_EOF+4d    
msado15!CRecordset::Invoke+dc8    
jscript!IDispatchInvoke2+b5    
jscript!IDispatchInvoke+59    
jscript!InvokeDispatch+90    
jscript!VAR::InvokeByName+1c2    
jscript!CScriptRuntime::Run+9e1    
jscript!ScrFncObj::Call+8d    
jscript!NameTbl::InvokeInternal+e0    
jscript!VAR::InvokeByDispID+fd    
jscript!CScriptRuntime::Run+16c9    
jscript!ScrFncObj::Call+8d    
jscript!CSession::Execute+a1    
jscript!COleScript::ExecutePendingScripts+147    
jscript!COleScript::SetScriptState+f1    
asp!CActiveScriptEngine::TryCall+19    
asp!CActiveScriptEngine::Call+31    
asp!CallScriptFunctionOfEngine+5b    
asp!ExecuteRequest+17e    
asp!Execute+24c    
asp!CHitObj::ViperAsyncCallback+3f0    
asp!CViperAsyncRequest::OnCall+92    
comsvcs!CSTAActivityWork::STAActivityWorkHelper+32    
ole32!EnterForCallback+c4    
ole32!SwitchForCallback+1a3    
ole32!PerformCallback+54    
ole32!CObjectContext::InternalContextCallback+159    
ole32!CObjectContext::DoCallback+1c    
comsvcs!CSTAActivityWork::DoWork+12d    
comsvcs!CSTAThread::DoWork+18    
comsvcs!CSTAThread::ProcessQueueWork+37    
comsvcs!CSTAThread::WorkerLoop+190    
msvcrt!_endthreadex+a3    
kernel32!BaseThreadStart+34    

ADO Recordset properties:
Query SELECT * FROM STATUS_CODES  
CursorLocation    adUseServer (unspecified)
CursorType adOpenStatic
State adStateOpen

ADO Connection properties:
Connection String Driver={SQL SERVER};Server=********;Database=******;UID=******;pwd=*****;Network=*******;
Connection Timeout    15s
Command Timeout  30s

Socket properties:
Source Port ****
Destination IP 192.********
Destination Port  ****

4. Thread 46 - System ID 2628
Entry point   msvcrt!_endthreadex+2f
Create time   19/02/2009 13:27:53
Time spent in user mode   0 Days 00:00:00.030
Time spent in kernel mode   0 Days 00:00:00.020

This thread is making a database operation using ADO.
The call to MSADO15!CRECORDSET::MOVENEXT originated from jscript!IDispatchInvoke2+b5
Function   Source
ntdll!KiFastSystemCallRet    
ntdll!NtWaitForSingleObject+c    
mswsock!SockWaitForSingleObject+3a    
mswsock!WSPRecv+203    
ws2_32!WSARecv+77    
wsock32!recv+31    
dbnetlib!ConnectionRead+3b6    
sqlsrv32!getbytes+1fa    
sqlsrv32!ProcessTDSStream+204    
sqlsrv32!ExecRPCImmediate+229    
sqlsrv32!ExtendedFetch+226    
sqlsrv32!FetchScroll+25a    
sqlsrv32!SQLFetchScroll+6b    
odbc32!SQLFetchScroll+112    
msdasql!CFetchRowsFetchScrollBmk::FetchRows+1d3    
msdasql!CRowset::FetchRows+2d    
msdasql!CImpIRowsetScroll::GetRowsAtBookmark+137    
msdasql!CImpIRowsetScroll::GetRowsAt+121    
msadrh15!CRowsetHelper::GetRowsAt+6c    
msado15!CRecordset::MoveAbsolute+2bb    
msado15!CRecordset::MoveRelative+22d    
msado15!CRecordset::MoveNext+b6    
msado15!CRecordset::Invoke+119b    
jscript!IDispatchInvoke2+b5    
jscript!IDispatchInvoke+59    
jscript!InvokeDispatch+90    
jscript!VAR::InvokeByName+1c2    
jscript!VAR::InvokeDispName+43    
jscript!VAR::InvokeByDispID+b9    
jscript!CScriptRuntime::Run+16c9    
jscript!ScrFncObj::Call+8d    
jscript!NameTbl::InvokeInternal+40    
jscript!VAR::InvokeByDispID+fd    
jscript!VAR::InvokeByName+165    
jscript!VAR::InvokeDispName+43    
jscript!VAR::InvokeByDispID+b9    
jscript!CScriptRuntime::Run+16c9    
jscript!ScrFncObj::Call+8d    
jscript!NameTbl::InvokeInternal+40    
jscript!VAR::InvokeByDispID+fd    
jscript!VAR::InvokeByName+165    
jscript!VAR::InvokeDispName+43    
jscript!VAR::InvokeByDispID+b9    
jscript!CScriptRuntime::Run+16c9    
jscript!ScrFncObj::Call+8d    
jscript!NameTbl::InvokeInternal+e0    
jscript!VAR::InvokeByDispID+fd    
jscript!CScriptRuntime::Run+1675    
jscript!ScrFncObj::Call+8d    
jscript!CSession::Execute+a1    
jscript!COleScript::ExecutePendingScripts+147    
jscript!COleScript::SetScriptState+f1    
asp!CActiveScriptEngine::TryCall+19    
asp!CActiveScriptEngine::Call+31    
asp!CallScriptFunctionOfEngine+5b    
asp!ExecuteRequest+17e    
asp!Execute+24c    
asp!CHitObj::ViperAsyncCallback+3f0    
asp!CViperAsyncRequest::OnCall+92    
comsvcs!CSTAActivityWork::STAActivityWorkHelper+32    
ole32!EnterForCallback+c4    
ole32!SwitchForCallback+1a3    
ole32!PerformCallback+54    
ole32!CObjectContext::InternalContextCallback+159    
ole32!CObjectContext::DoCallback+1c    
comsvcs!CSTAActivityWork::DoWork+12d    
comsvcs!CSTAThread::DoWork+18    
comsvcs!CSTAThread::ProcessQueueWork+37    
comsvcs!CSTAThread::WorkerLoop+190    
msvcrt!_endthreadex+a3    
kernel32!BaseThreadStart+34    

ADO Recordset properties:
Query SELECT Location_ID, menu_count, menu_step FROM Locations where Domain = 4
CursorLocation    adUseServer (unspecified)
CursorType adOpenKeyset
State adStateOpen

Socket properties:
Source Port ****
Destination IP 192.****
Destination Port  ****


So, can anyone tell me if these items are of any significance? Not looking for anyone to do my homework for me..just wondering if anyone can point me in the right direction thats all.

Thanks!
Avatar of meverest
meverest
Flag of Australia image

generally, you will read these dumps in the context of what behaviour you are trying to debug.  Like is the application crashing, or are you getting unexpected results or getting 100% cpu cycle etc.

without some understanding of what you are looking for, you'll never find that needle.

Cheers!
Avatar of dpeadmin
dpeadmin

ASKER

Sorry :)
Getting high CPU spikes, asp pages which read from a database are dead slow at times and at other times they timing out..
This is just an ongoing saga that I am trying to figure out bit by bit.. Our site has always been a bit slow, but whatever. But the past few months its gone real flakey. and the past 3 weeks has been horrendous. Some work was done to it (by external company) a few months back and some aspx pages were added..so trying to make sure thats not affecting us
I know we've old suspect code, so the chances of memory leaks is good..but we can live with that. I just need to stop it form timing out!!
I have a few suspicions that some of it may be down to our hosting place which hosts the web & db server, thing is untill i can rule out a few basic things i can't just run over and accuse them of causing the problems.
Its probably a lost cause, I just thought if anyone had experience of reading the log files they could tell me if I am just seeing problems that aren't really problems..? :)

Cheers
 
OK,

the thing is, though, that the bits you have posted really have nothing interesting in there.  Take a look at these:

>> Time spent in user mode   0 Days 00:00:00.00
>> Time spent in kernel mode   0 Days 00:00:00.00

and note that they don't show anything that look like they are causing huge CPU hit - that one looks like it hasn't even used enough resource to even register - which is probably less than half of 0.01 seconds, or only a few hundred cpu ticks.

Is there just the one application?  The best way to diagnose that sort of problem is to first isolate all apps into independent application pools, and so at least you will be able to find out which application is playing up.  Give each app pool a unique logon user so that you can see in the task manager process list which one is pegging the cpu.

once you know which app is playing up, run your debug dump *when* the problem is happening.  Then you can look through the stats to find those that are using up a lot of resources, and work from there.

Cheers!

Mike.
Thanks Mike..
Its just one of things..I have a lot roles in my job and as usual I only get to work on this when its rearing its head. So as usual, its quietened down a bit so I've other work to do and won't get back to this untill soemthing hits the fan again.
I get where your going though.
funnily enough, i was having similar results last week, when the site was timing out and when i made some contact with our hosting company, they reported there was a backup running on the DB server. They stopped that and I set the debug to run for the rest of the day and there were little to no problems.
Dunno..could a lot of this be down to dodgy conenctions to the database server or backups on the DB server running longer than they should ???(which generates the vast majority of the  website)
ASKER CERTIFIED SOLUTION
Avatar of meverest
meverest
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Update:
I really suspect most of my problems were due to the hosting company. Miraculously the site was fine everytime I asked them for details, and the final time, 2 weeks ago, I requested all sorts of reports and backup reports etc etc.. its been working fine ever since then.
Grrrr.... I think they short on bandwidth or soemthing or whatever the technical term is, and they are juggling the sites around according to who is complaining the most.
Sigh..so thanks for the help..I didn't really get anywhere..but I'm sure this isn't the end of it.
 
Cheers
Thanks