Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase

Average Page Life Expectancy Expand / Collapse
Author
Message
Posted Wednesday, December 1, 2010 3:03 AM


Old Hand

Old HandOld HandOld HandOld HandOld HandOld HandOld HandOld Hand

Group: General Forum Members
Last Login: Thursday, September 26, 2013 12:38 PM
Points: 338, Visits: 449
Comments posted to this topic are about the item Average Page Life Expectancy

Post #1028491
Posted Wednesday, December 1, 2010 7:26 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Wednesday, September 4, 2013 8:50 AM
Points: 4, Visits: 118
...or you could use perfmon to get the same.
Post #1028638
Posted Wednesday, December 1, 2010 7:30 AM


Old Hand

Old HandOld HandOld HandOld HandOld HandOld HandOld HandOld Hand

Group: General Forum Members
Last Login: Thursday, September 26, 2013 12:38 PM
Points: 338, Visits: 449
Please don't laugh at me, but in my current environment our Network Admin does not allow the DBA's to view Perfmon on our servers. I know in most cases this is not the norm, so this script is redundant for those who have access to Perfmon. Although, for those poor souls who do not have access to Perfmon, then this script will fill the gap.

Thanks for the reply.


Post #1028644
Posted Wednesday, December 1, 2010 8:10 AM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Friday, November 21, 2014 9:13 AM
Points: 23, Visits: 153
Keith Browning (12/1/2010)
...or you could use perfmon to get the same.


True, but there's some overhead with constantly running a perfmon. Just scraping the already collected data from the DMV's is less overhead. We do something similar to this with the Memory Grants Pending metric. That's usually an indicator of memory saturation (ie we're dead in the water), but by itself is not that useful because it's not a predictive metric. It only tells me my server is dead, it doesn't tell me anything prior to the server becoming saturated.

Page Life Expectancy is a decent predictive metric. It's not the end-all-be-all metric for memory consumption, but at least it'll start an investigation which is usually all we need.


Post #1028680
Posted Wednesday, December 1, 2010 8:23 PM
Valued Member

Valued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued Member

Group: General Forum Members
Last Login: Monday, September 2, 2013 2:52 AM
Points: 51, Visits: 126
The script did not work on my PC. I found the object_name is 'MSSQL$INST01:Buffer Manager' instead in my PC.
Post #1029058
Posted Monday, December 6, 2010 6:35 AM


Ten Centuries

Ten CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen Centuries

Group: General Forum Members
Last Login: Today @ 2:09 AM
Points: 1,411, Visits: 1,018
The code does not take the instance name into account.
Here is a solution that does.

/******************************************************************************

http://www.sqlservercentral.com/scripts/Performance+Monitoring/71677/

NOTES:
This script provides a sampling of PLE based on (1) minute intervals from
sys.dm_os_performance_counters. Originally written on November 11, 2010
by Tim Parker.
*******************************************************************************/

SET NOCOUNT ON
DECLARE @counter INT --This will be used to iterate the sampling loop for the PLE measure.

SET @counter = 0

BEGIN TRY
DROP TABLE #pleSample
END TRY
begin CATCH
END CATCH

CREATE TABLE #pleSample
(
CaptureTime DATETIME,
PageLifeExpectancy BIGINT
)

WHILE @counter < 30 --Sampling will run approximately 1 minute.
BEGIN
--Captures Page Life Expectancy from sys.dm_os_performance_counters
INSERT INTO #pleSample
(
CaptureTime,
PageLifeExpectancy
)

SELECT CURRENT_TIMESTAMP,
cntr_value
FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE N'%:Buffer Manager%'
AND counter_name = N'Page life expectancy'

SET @counter = @counter + 1
RAISERROR('loop number %i ', 10, 1, @counter) WITH NOWAIT
WAITFOR DELAY '000:00:02'

END

--This query will return the average PLE based on a 1 minute sample.
SELECT RIGHT(CONVERT(VARCHAR(24), DATEADD(SECOND, AVG(PageLifeExpectancy), 0), 113),12) AS 'Average Page Life Expectancy'
FROM #pleSample

DROP TABLE #pleSample






Post #1030566
Posted Thursday, May 19, 2011 12:16 PM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Wednesday, May 14, 2014 12:42 PM
Points: 1, Visits: 13
Tell the adimins that they are aholes as you need to be able to view the perfomance in order to discern the effectiviness of your schema/queries/indexes
if they will not budge go to the upper guys and advise them you need the idera suite for monitoring this will cost quite a bit... If they give it to you you are golden if not then advise you will not be responsible for tuning as the power hungry sys admins are doing their bs power grab again. I was ready for this type of situation and when my network admin replied so what do you want admin rights on the whole system then respond YES I did and having such rights have saved me on several occasions. If that does not work when stuff goes down say you have no access to be able to fix as you are not allowed to view the perfomance as all dbas are.. Then flat out blame the network admin it worked for me



Post #1111929
« Prev Topic | Next Topic »

Add to briefcase

Permissions Expand / Collapse