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!NtWaitForMultipleObj ects+c
kernel32!WaitForMultipleOb jectsEx+11 a
user32!RealMsgWaitForMulti pleObjects Ex+141
user32!MsgWaitForMultipleO bjects+1f
pdm+886c
pdm+8a85
pdm+8a09
kernel32!BaseThreadStart+3 4
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_EO F originated from jscript!IDispatchInvoke2+b 5
Function Source
ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObjec t+c
mswsock!SockWaitForSingleO bject+3a
mswsock!WSPRecv+203
ws2_32!WSARecv+77
wsock32!recv+31
dbnetlib!ConnectionRead+3b 6
sqlsrv32!getbytes+1fa
sqlsrv32!ProcessTDSStream+ 204
sqlsrv32!ExecRPCImmediate+ 229
sqlsrv32!ExtendedFetch+226
sqlsrv32!FetchScroll+25a
sqlsrv32!SQLFetchScroll+6b
odbc32!SQLFetchScroll+112
msdasql!CFetchRowsFetchScr ollBmk::Fe tchRows+1d 3
msdasql!CRowset::FetchRows +2d
msdasql!CImpIRowsetScroll: :GetRowsAt Bookmark+1 37
msdasql!CImpIRowsetScroll: :GetRowsAt +121
msadrh15!CRowsetHelper::Ge tRowsAt+6c
msado15!CRecordset::MoveAb solute+2bb
msado15!CRecordset::_MoveF irst+7c
msado15!CRecordGroup::GetD eferredHRo w+41
msado15!CRecordset::GetDef erredHRow+ 1d
msado15!CRecordset::_get_E OF+1e
msado15!CRecordset::get_EO F+4d
msado15!CRecordset::Invoke +dc8
jscript!IDispatchInvoke2+b 5
jscript!IDispatchInvoke+59
jscript!InvokeDispatch+90
jscript!VAR::InvokeByName+ 1c2
jscript!CScriptRuntime::Ru n+9e1
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt ernal+e0
jscript!VAR::InvokeByDispI D+fd
jscript!CScriptRuntime::Ru n+16c9
jscript!ScrFncObj::Call+8d
jscript!CSession::Execute+ a1
jscript!COleScript::Execut ePendingSc ripts+147
jscript!COleScript::SetScr iptState+f 1
asp!CActiveScriptEngine::T ryCall+19
asp!CActiveScriptEngine::C all+31
asp!CallScriptFunctionOfEn gine+5b
asp!ExecuteRequest+17e
asp!Execute+24c
asp!CHitObj::ViperAsyncCal lback+3f0
asp!CViperAsyncRequest::On Call+92
comsvcs!CSTAActivityWork:: STAActivit yWorkHelpe r+32
ole32!EnterForCallback+c4
ole32!SwitchForCallback+1a 3
ole32!PerformCallback+54
ole32!CObjectContext::Inte rnalContex tCallback+ 159
ole32!CObjectContext::DoCa llback+1c
comsvcs!CSTAActivityWork:: DoWork+12d
comsvcs!CSTAThread::DoWork +18
comsvcs!CSTAThread::Proces sQueueWork +37
comsvcs!CSTAThread::Worker Loop+190
msvcrt!_endthreadex+a3
kernel32!BaseThreadStart+3 4
ADO Recordset properties:
Query SELECT * FROM STATUS_CODES
CursorLocation adUseServer (unspecified)
CursorType adOpenStatic
State adStateOpen
ADO Connection properties:
Connection String Driver={SQL SERVER};Server=********;Da tabase=*** ***;UID=** ****;pwd=* ****;Netwo rk=******* ;
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::MOVENE XT originated from jscript!IDispatchInvoke2+b 5
Function Source
ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObjec t+c
mswsock!SockWaitForSingleO bject+3a
mswsock!WSPRecv+203
ws2_32!WSARecv+77
wsock32!recv+31
dbnetlib!ConnectionRead+3b 6
sqlsrv32!getbytes+1fa
sqlsrv32!ProcessTDSStream+ 204
sqlsrv32!ExecRPCImmediate+ 229
sqlsrv32!ExtendedFetch+226
sqlsrv32!FetchScroll+25a
sqlsrv32!SQLFetchScroll+6b
odbc32!SQLFetchScroll+112
msdasql!CFetchRowsFetchScr ollBmk::Fe tchRows+1d 3
msdasql!CRowset::FetchRows +2d
msdasql!CImpIRowsetScroll: :GetRowsAt Bookmark+1 37
msdasql!CImpIRowsetScroll: :GetRowsAt +121
msadrh15!CRowsetHelper::Ge tRowsAt+6c
msado15!CRecordset::MoveAb solute+2bb
msado15!CRecordset::MoveRe lative+22d
msado15!CRecordset::MoveNe xt+b6
msado15!CRecordset::Invoke +119b
jscript!IDispatchInvoke2+b 5
jscript!IDispatchInvoke+59
jscript!InvokeDispatch+90
jscript!VAR::InvokeByName+ 1c2
jscript!VAR::InvokeDispNam e+43
jscript!VAR::InvokeByDispI D+b9
jscript!CScriptRuntime::Ru n+16c9
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt ernal+40
jscript!VAR::InvokeByDispI D+fd
jscript!VAR::InvokeByName+ 165
jscript!VAR::InvokeDispNam e+43
jscript!VAR::InvokeByDispI D+b9
jscript!CScriptRuntime::Ru n+16c9
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt ernal+40
jscript!VAR::InvokeByDispI D+fd
jscript!VAR::InvokeByName+ 165
jscript!VAR::InvokeDispNam e+43
jscript!VAR::InvokeByDispI D+b9
jscript!CScriptRuntime::Ru n+16c9
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt ernal+e0
jscript!VAR::InvokeByDispI D+fd
jscript!CScriptRuntime::Ru n+1675
jscript!ScrFncObj::Call+8d
jscript!CSession::Execute+ a1
jscript!COleScript::Execut ePendingSc ripts+147
jscript!COleScript::SetScr iptState+f 1
asp!CActiveScriptEngine::T ryCall+19
asp!CActiveScriptEngine::C all+31
asp!CallScriptFunctionOfEn gine+5b
asp!ExecuteRequest+17e
asp!Execute+24c
asp!CHitObj::ViperAsyncCal lback+3f0
asp!CViperAsyncRequest::On Call+92
comsvcs!CSTAActivityWork:: STAActivit yWorkHelpe r+32
ole32!EnterForCallback+c4
ole32!SwitchForCallback+1a 3
ole32!PerformCallback+54
ole32!CObjectContext::Inte rnalContex tCallback+ 159
ole32!CObjectContext::DoCa llback+1c
comsvcs!CSTAActivityWork:: DoWork+12d
comsvcs!CSTAThread::DoWork +18
comsvcs!CSTAThread::Proces sQueueWork +37
comsvcs!CSTAThread::Worker Loop+190
msvcrt!_endthreadex+a3
kernel32!BaseThreadStart+3 4
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!
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!NtWaitForMultipleObj
kernel32!WaitForMultipleOb
user32!RealMsgWaitForMulti
user32!MsgWaitForMultipleO
pdm+886c
pdm+8a85
pdm+8a09
kernel32!BaseThreadStart+3
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_EO
Function Source
ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObjec
mswsock!SockWaitForSingleO
mswsock!WSPRecv+203
ws2_32!WSARecv+77
wsock32!recv+31
dbnetlib!ConnectionRead+3b
sqlsrv32!getbytes+1fa
sqlsrv32!ProcessTDSStream+
sqlsrv32!ExecRPCImmediate+
sqlsrv32!ExtendedFetch+226
sqlsrv32!FetchScroll+25a
sqlsrv32!SQLFetchScroll+6b
odbc32!SQLFetchScroll+112
msdasql!CFetchRowsFetchScr
msdasql!CRowset::FetchRows
msdasql!CImpIRowsetScroll:
msdasql!CImpIRowsetScroll:
msadrh15!CRowsetHelper::Ge
msado15!CRecordset::MoveAb
msado15!CRecordset::_MoveF
msado15!CRecordGroup::GetD
msado15!CRecordset::GetDef
msado15!CRecordset::_get_E
msado15!CRecordset::get_EO
msado15!CRecordset::Invoke
jscript!IDispatchInvoke2+b
jscript!IDispatchInvoke+59
jscript!InvokeDispatch+90
jscript!VAR::InvokeByName+
jscript!CScriptRuntime::Ru
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt
jscript!VAR::InvokeByDispI
jscript!CScriptRuntime::Ru
jscript!ScrFncObj::Call+8d
jscript!CSession::Execute+
jscript!COleScript::Execut
jscript!COleScript::SetScr
asp!CActiveScriptEngine::T
asp!CActiveScriptEngine::C
asp!CallScriptFunctionOfEn
asp!ExecuteRequest+17e
asp!Execute+24c
asp!CHitObj::ViperAsyncCal
asp!CViperAsyncRequest::On
comsvcs!CSTAActivityWork::
ole32!EnterForCallback+c4
ole32!SwitchForCallback+1a
ole32!PerformCallback+54
ole32!CObjectContext::Inte
ole32!CObjectContext::DoCa
comsvcs!CSTAActivityWork::
comsvcs!CSTAThread::DoWork
comsvcs!CSTAThread::Proces
comsvcs!CSTAThread::Worker
msvcrt!_endthreadex+a3
kernel32!BaseThreadStart+3
ADO Recordset properties:
Query SELECT * FROM STATUS_CODES
CursorLocation adUseServer (unspecified)
CursorType adOpenStatic
State adStateOpen
ADO Connection properties:
Connection String Driver={SQL SERVER};Server=********;Da
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::MOVENE
Function Source
ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObjec
mswsock!SockWaitForSingleO
mswsock!WSPRecv+203
ws2_32!WSARecv+77
wsock32!recv+31
dbnetlib!ConnectionRead+3b
sqlsrv32!getbytes+1fa
sqlsrv32!ProcessTDSStream+
sqlsrv32!ExecRPCImmediate+
sqlsrv32!ExtendedFetch+226
sqlsrv32!FetchScroll+25a
sqlsrv32!SQLFetchScroll+6b
odbc32!SQLFetchScroll+112
msdasql!CFetchRowsFetchScr
msdasql!CRowset::FetchRows
msdasql!CImpIRowsetScroll:
msdasql!CImpIRowsetScroll:
msadrh15!CRowsetHelper::Ge
msado15!CRecordset::MoveAb
msado15!CRecordset::MoveRe
msado15!CRecordset::MoveNe
msado15!CRecordset::Invoke
jscript!IDispatchInvoke2+b
jscript!IDispatchInvoke+59
jscript!InvokeDispatch+90
jscript!VAR::InvokeByName+
jscript!VAR::InvokeDispNam
jscript!VAR::InvokeByDispI
jscript!CScriptRuntime::Ru
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt
jscript!VAR::InvokeByDispI
jscript!VAR::InvokeByName+
jscript!VAR::InvokeDispNam
jscript!VAR::InvokeByDispI
jscript!CScriptRuntime::Ru
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt
jscript!VAR::InvokeByDispI
jscript!VAR::InvokeByName+
jscript!VAR::InvokeDispNam
jscript!VAR::InvokeByDispI
jscript!CScriptRuntime::Ru
jscript!ScrFncObj::Call+8d
jscript!NameTbl::InvokeInt
jscript!VAR::InvokeByDispI
jscript!CScriptRuntime::Ru
jscript!ScrFncObj::Call+8d
jscript!CSession::Execute+
jscript!COleScript::Execut
jscript!COleScript::SetScr
asp!CActiveScriptEngine::T
asp!CActiveScriptEngine::C
asp!CallScriptFunctionOfEn
asp!ExecuteRequest+17e
asp!Execute+24c
asp!CHitObj::ViperAsyncCal
asp!CViperAsyncRequest::On
comsvcs!CSTAActivityWork::
ole32!EnterForCallback+c4
ole32!SwitchForCallback+1a
ole32!PerformCallback+54
ole32!CObjectContext::Inte
ole32!CObjectContext::DoCa
comsvcs!CSTAActivityWork::
comsvcs!CSTAThread::DoWork
comsvcs!CSTAThread::Proces
comsvcs!CSTAThread::Worker
msvcrt!_endthreadex+a3
kernel32!BaseThreadStart+3
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!
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
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.
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.
ASKER
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)
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
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
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
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
ASKER
Thanks
without some understanding of what you are looking for, you'll never find that needle.
Cheers!