dbTalk Databases Forums  

query to find long running query

microsoft.public.sqlserver.server microsoft.public.sqlserver.server


Discuss query to find long running query in the microsoft.public.sqlserver.server forum.



Reply
 
Thread Tools Display Modes
  #21  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM






Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #22  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM






Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #23  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #24  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #25  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #26  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #27  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #28  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #29  
Old   
manu
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 01:46 PM



Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT NULL,
dbid INT NOT NULL,
uid INT NOT NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Quote:
Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that are
still running and are past 20 mins since it came in ? How can I do so ?
I am using SQL 2000. If i can have one for 2005, that would be fine too.

Thank you.





Reply With Quote
  #30  
Old   
Jack
 
Posts: n/a

Default Re: query to find long running query - 05-16-2008 , 07:38 PM



If a process is running and not waiting for any resource, will waittime
increase as such ?

I would like to know if a query is just running right now and been running
for the last 20 mins and it may not be waiting for anything but just
running.


"manu" <manu (AT) discussions (DOT) microsoft.com> wrote

Quote:
Try this code and schedule it as a job:--

SET NOCOUNT ON
Drop TABLE #job_execution_state
CREATE TABLE #job_execution_state (spid int NOT NULL,
cmd sysname COLLATE
database_default NULL,
hostname sysname COLLATE
database_default NULL,
waittime INT NOT
NULL,
dbid INT NOT
NULL,
uid INT NOT
NULL,
Status sysname COLLATE
database_default NULL,
loginame sysname COLLATE
database_default NULL)
Insert into #job_execution_state
select spid,cmd,hostname,waittime,dbid,uid,status,loginam e from
master..sysprocesses where waittime>1200000--Specify time in milliseconds
here
and spid>50

if exists (Select * from #job_execution_state)

begin
EXEC xp_cmdshell 'Net Send Machinename One or more processes are running
for
more than 20 minutes'
end

Manu Jaidka

"Jack" wrote:

Is there no query using sysprocesses or DMVs in SQL 2000/2005 that i can
write ? I want to raise an alert if queries are running for past 20 mins.

"Linchi Shea" <LinchiShea (AT) discussions (DOT) microsoft.com> wrote in message
news:285BC385-3DF7-430C-B291-579C0EDCFE59 (AT) microsoft (DOT) com...
With SQL2000, you'd be better off obtaining that info with a SQL trace.

Linchi

"Jack" wrote:

I want to write a query that will tell me if there are queries that
are
still running and are past 20 mins since it came in ? How can I do so
?
I am using SQL 2000. If i can have one for 2005, that would be fine
too.

Thank you.






Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.