Calculate average in the threshold

Jan 13, 2011 at 4:54 PM

Hi Guys,

 

I'm having troubles finding any docs regarding threshold creation. 

Can anyone provide an example on how to create following threshold:

Object: Processor(_Total)\% Processor Time

Threshold: Should be less than 75% on average.

 

Thanks in advance,

Alex

Coordinator
Jan 18, 2011 at 7:54 PM

Hi Alex,

Operating system counters such as % Processor Time are covered in the Quick System Overview threshold file. Why do you want to create a custom one?

Admittedly, I have not documented the creation of custom threshold files yet. If urgent, contact me directly at clinth@microsoft.com.

Jan 18, 2011 at 9:07 PM
Hi Clint,

Thanks for replying.

My goal was to create a similar app to analyse Exchange 2010 performance using counter threshold from the below article:

But luckily I wound PAL and is already designed for all my needs :).

Its just that we (RIM support) have a lot cases related to Exchange 2010 SP1 performance issues and PAL can speeds things up for us and improve customers experience. Exchange 2010 threshold file provided with PAL, but it misses some critical thresholds like "MSExchangeIS Client (*)\RPC Average Latency".

I think I figured out average, should look something like below. But I would greatly appreciate if some kind of quick threshold guide will be posted at pal.codeplex.com:
-------
For ($i=0;$i -lt $CollectionOfProcessorPercentProcessorTime.Count;$i++)
{
$oCounterInstance = $CollectionOfProcessorPercentProcessorTime[$i]
For ($t=0;$t -lt $alQuantizedTime.Count;$t++)
{
$IsMinThresholdBroken = $False
$IsAvgThresholdBroken = $False
$IsMaxThresholdBroken = $False
$IsTrendThresholdBroken = $False
$IsMinEvaluated = $False
$IsAvgEvaluated = $False
$IsMaxEvaluated = $False
$IsTrendEvaluated = $False
If (($oCounterInstance.QuantizedAvg[$t] -ne '-') -and ($oCounterInstance.QuantizedAvg[$t] -ne $null))
{
If ($oCounterInstance.QuantizedAvg[$t] -gt 75)
{
$IsAvgThresholdBroken = $True
$IsAvgEvaluated = $True
}
}
If (($IsMinThresholdBroken -eq $True) -or ($IsAvgThresholdBroken -eq $True) -or ($IsMaxThresholdBroken -eq $True) -or ($IsTrendThresholdBroken -eq $True))
{
CreateAlert -TimeSliceIndex $t -CounterInstanceObject $oCounterInstance -IsMinThresholdBroken $IsMinThresholdBroken -IsAvgThresholdBroken $IsAvgThresholdBroken -IsMaxThresholdBroken $IsMaxThresholdBroken -IsTrendThresholdBroken $IsTrendThresholdBroken -IsMinEvaluated $IsMinEvaulated -IsAvgEvaluated $IsAvgEvaulated -IsMaxEvaluated $IsMaxEvaulated -IsTrendEvaluated $IsTrendEvaulated
}
}
}
------

Many Thanks,
Alex


From: [email removed]
To: [email removed]
Date: Tue, 18 Jan 2011 12:54:29 -0800
Subject: Re: Calculate average in the threshold [PAL:241669]

From: ClintH
Hi Alex,
Operating system counters such as % Processor Time are covered in the Quick System Overview threshold file. Why do you want to create a custom one?
Admittedly, I have not documented the creation of custom threshold files yet. If urgent, contact me directly at clinth@microsoft.com.
Read the full discussion online.
To add a post to this discussion, reply to this email (PAL@discussions.codeplex.com)
To start a new discussion for this project, email PAL@discussions.codeplex.com
You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com
Coordinator
Jan 18, 2011 at 9:40 PM

[Adding Mike Lagase who is the content owner]

Hi Alex,

It looks like you are trying to do a custom threshold and it looks fine, but you can accomplish the same thing relatively easily.

In the PAL Wizard, Edit the Exchange 2010 threshold file and locate the MSExchangeIS Client RPC Average Latency counter. Next, in the Thresholds section, click Add…

It will automatically populate the threshold for you, so all you have to do is set the threshold value in the highlighted line below.

If you are not getting these screenshots this email, then the line is:

StaticThreshold -CollectionOfCounterInstances $MSExchangeISClientRPCAverageLatencyALL -Operator 'gt' –Threshold 75

Click OK, Update Analysis, then File Save to save the changes.

Thank you,

From: Alex P [email removed]
Sent: Tuesday, January 18, 2011 2:08 PM
To: pal@discussions.codeplex.com; Clint Huffman
Subject: RE: Calculate average in the threshold [PAL:241669]

Hi Clint,

Thanks for replying.

My goal was to create a similar app to analyse Exchange 2010 performance using counter threshold from the below article:

But luckily I wound PAL and is already designed for all my needs :).

Its just that we (RIM support) have a lot cases related to Exchange 2010 SP1 performance issues and PAL can speeds things up for us and improve customers experience. Exchange 2010 threshold file provided with PAL, but it misses some critical thresholds like "MSExchangeIS Client (*)\RPC Average Latency".

I think I figured out average, should look something like below. But I would greatly appreciate if some kind of quick threshold guide will be posted at pal.codeplex.com:

-------

For ($i=0;$i -lt $CollectionOfProcessorPercentProcessorTime.Count;$i++)

{

$oCounterInstance = $CollectionOfProcessorPercentProcessorTime[$i]

For ($t=0;$t -lt $alQuantizedTime.Count;$t++)

{

$IsMinThresholdBroken = $False

$IsAvgThresholdBroken = $False

$IsMaxThresholdBroken = $False

$IsTrendThresholdBroken = $False

$IsMinEvaluated = $False

$IsAvgEvaluated = $False

$IsMaxEvaluated = $False

$IsTrendEvaluated = $False

If (($oCounterInstance.QuantizedAvg[$t] -ne '-') -and ($oCounterInstance.QuantizedAvg[$t] -ne $null))

{

If ($oCounterInstance.QuantizedAvg[$t] -gt 75)

{

$IsAvgThresholdBroken = $True

$IsAvgEvaluated = $True

}

}

If (($IsMinThresholdBroken -eq $True) -or ($IsAvgThresholdBroken -eq $True) -or ($IsMaxThresholdBroken -eq $True) -or ($IsTrendThresholdBroken -eq $True))

{

CreateAlert -TimeSliceIndex $t -CounterInstanceObject $oCounterInstance -IsMinThresholdBroken $IsMinThresholdBroken -IsAvgThresholdBroken $IsAvgThresholdBroken -IsMaxThresholdBroken $IsMaxThresholdBroken -IsTrendThresholdBroken $IsTrendThresholdBroken -IsMinEvaluated $IsMinEvaulated -IsAvgEvaluated $IsAvgEvaulated -IsMaxEvaluated $IsMaxEvaulated -IsTrendEvaluated $IsTrendEvaulated

}

}

}

------

Many Thanks,

Alex


From: [email removed]
To: [email removed]
Date: Tue, 18 Jan 2011 12:54:29 -0800
Subject: Re: Calculate average in the threshold [PAL:241669]

From: ClintH

Hi Alex,
Operating system counters such as % Processor Time are covered in the Quick System Overview threshold file. Why do you want to create a custom one?
Admittedly, I have not documented the creation of custom threshold files yet. If urgent, contact me directly at clinth@microsoft.com.

Read the full discussion online.
To add a post to this discussion, reply to this email (PAL@discussions.codeplex.com)
To start a new discussion for this project, email PAL@discussions.codeplex.com
You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com

Jan 18, 2011 at 10:19 PM
Thanks Clint,

This is exactly what I was doing. This seems to work for counter's current values, but to evaluate average, min or max in counter sets loops and CreateAlert function have to be used. And its getting even bit more complex when getting into trends and quantized time arrays.

That is why I think it would be awesome to put something together to demonstrate how to evaluate trends, min, max values.

Thanks again for your response, I think I got the hang of it to start.

Best Regards,
Alex



From: [email removed]
To: [email removed]; pal@discussions.codeplex.com
CC: mikelag@microsoft.com
Subject: RE: Calculate average in the threshold [PAL:241669]
Date: Tue, 18 Jan 2011 22:40:00 +0000

[Adding Mike Lagase who is the content owner]

Hi Alex,

It looks like you are trying to do a custom threshold and it looks fine, but you can accomplish the same thing relatively easily.

In the PAL Wizard, Edit the Exchange 2010 threshold file and locate the MSExchangeIS Client RPC Average Latency counter. Next, in the Thresholds section, click Add…

It will automatically populate the threshold for you, so all you have to do is set the threshold value in the highlighted line below.

If you are not getting these screenshots this email, then the line is:

StaticThreshold -CollectionOfCounterInstances $MSExchangeISClientRPCAverageLatencyALL -Operator 'gt' –Threshold 75

Click OK, Update Analysis, then File Save to save the changes.

Thank you,

From: Alex P [email removed]
Sent: Tuesday, January 18, 2011 2:08 PM
To: pal@discussions.codeplex.com; Clint Huffman
Subject: RE: Calculate average in the threshold [PAL:241669]

Hi Clint,

Thanks for replying.

My goal was to create a similar app to analyse Exchange 2010 performance using counter threshold from the below article:

But luckily I wound PAL and is already designed for all my needs :).

Its just that we (RIM support) have a lot cases related to Exchange 2010 SP1 performance issues and PAL can speeds things up for us and improve customers experience. Exchange 2010 threshold file provided with PAL, but it misses some critical thresholds like "MSExchangeIS Client (*)\RPC Average Latency".

I think I figured out average, should look something like below. But I would greatly appreciate if some kind of quick threshold guide will be posted at pal.codeplex.com:

-------

For ($i=0;$i -lt $CollectionOfProcessorPercentProcessorTime.Count;$i++)

{

$oCounterInstance = $CollectionOfProcessorPercentProcessorTime[$i]

For ($t=0;$t -lt $alQuantizedTime.Count;$t++)

{

$IsMinThresholdBroken = $False

$IsAvgThresholdBroken = $False

$IsMaxThresholdBroken = $False

$IsTrendThresholdBroken = $False

$IsMinEvaluated = $False

$IsAvgEvaluated = $False

$IsMaxEvaluated = $False

$IsTrendEvaluated = $False

If (($oCounterInstance.QuantizedAvg[$t] -ne '-') -and ($oCounterInstance.QuantizedAvg[$t] -ne $null))

{

If ($oCounterInstance.QuantizedAvg[$t] -gt 75)

{

$IsAvgThresholdBroken = $True

$IsAvgEvaluated = $True

}

}

If (($IsMinThresholdBroken -eq $True) -or ($IsAvgThresholdBroken -eq $True) -or ($IsMaxThresholdBroken -eq $True) -or ($IsTrendThresholdBroken -eq $True))

{

CreateAlert -TimeSliceIndex $t -CounterInstanceObject $oCounterInstance -IsMinThresholdBroken $IsMinThresholdBroken -IsAvgThresholdBroken $IsAvgThresholdBroken -IsMaxThresholdBroken $IsMaxThresholdBroken -IsTrendThresholdBroken $IsTrendThresholdBroken -IsMinEvaluated $IsMinEvaulated -IsAvgEvaluated $IsAvgEvaulated -IsMaxEvaluated $IsMaxEvaulated -IsTrendEvaluated $IsTrendEvaulated

}

}

}

------

Many Thanks,

Alex


From: [email removed]
To: [email removed]
Date: Tue, 18 Jan 2011 12:54:29 -0800
Subject: Re: Calculate average in the threshold [PAL:241669]

From: ClintH

Hi Alex,
Operating system counters such as % Processor Time are covered in the Quick System Overview threshold file. Why do you want to create a custom one?
Admittedly, I have not documented the creation of custom threshold files yet. If urgent, contact me directly at clinth@microsoft.com.

Read the full discussion online.
To add a post to this discussion, reply to this email (PAL@discussions.codeplex.com)
To start a new discussion for this project, email PAL@discussions.codeplex.com
You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com

Coordinator
Jan 18, 2011 at 11:53 PM

Actually, the StaticThreshold function analyzes all of the quantized (time sliced) min, max, and average values – not every value. So it covers your average, min, and max values. I haven’t came across a case where I had to look at only one of them so far.

Can you describe the kind of analysis you are trying to do?

The reason I haven’t done the documention yet is simply because I only work on PAL during my free time. Lately, customer related work has been very busy, so I’ve had less and less time to work on it.

FYI. I am releasing a new minor version of PAL tonight (v2.0.6.)

From: Alex P [email removed]
Sent: Tuesday, January 18, 2011 3:20 PM
To: Clint Huffman; pal@discussions.codeplex.com
Cc: Mike Lagase
Subject: RE: Calculate average in the threshold [PAL:241669]

Thanks Clint,

This is exactly what I was doing. This seems to work for counter's current values, but to evaluate average, min or max in counter sets loops and CreateAlert function have to be used. And its getting even bit more complex when getting into trends and quantized time arrays.

That is why I think it would be awesome to put something together to demonstrate how to evaluate trends, min, max values.

Thanks again for your response, I think I got the hang of it to start.

Best Regards,

Alex


From: [email removed]
To: [email removed]; pal@discussions.codeplex.com
CC: mikelag@microsoft.com
Subject: RE: Calculate average in the threshold [PAL:241669]
Date: Tue, 18 Jan 2011 22:40:00 +0000

[Adding Mike Lagase who is the content owner]

Hi Alex,

It looks like you are trying to do a custom threshold and it looks fine, but you can accomplish the same thing relatively easily.

In the PAL Wizard, Edit the Exchange 2010 threshold file and locate the MSExchangeIS Client RPC Average Latency counter. Next, in the Thresholds section, click Add…

It will automatically populate the threshold for you, so all you have to do is set the threshold value in the highlighted line below.

If you are not getting these screenshots this email, then the line is:

StaticThreshold -CollectionOfCounterInstances $MSExchangeISClientRPCAverageLatencyALL -Operator 'gt' –Threshold 75

Click OK, Update Analysis, then File Save to save the changes.

Thank you,

From: Alex P [email removed]
Sent: Tuesday, January 18, 2011 2:08 PM
To: pal@discussions.codeplex.com; Clint Huffman
Subject: RE: Calculate average in the threshold [PAL:241669]

Hi Clint,

Thanks for replying.

My goal was to create a similar app to analyse Exchange 2010 performance using counter threshold from the below article:

But luckily I wound PAL and is already designed for all my needs :).

Its just that we (RIM support) have a lot cases related to Exchange 2010 SP1 performance issues and PAL can speeds things up for us and improve customers experience. Exchange 2010 threshold file provided with PAL, but it misses some critical thresholds like "MSExchangeIS Client (*)\RPC Average Latency".

I think I figured out average, should look something like below. But I would greatly appreciate if some kind of quick threshold guide will be posted at pal.codeplex.com:

-------

For ($i=0;$i -lt $CollectionOfProcessorPercentProcessorTime.Count;$i++)

{

$oCounterInstance = $CollectionOfProcessorPercentProcessorTime[$i]

For ($t=0;$t -lt $alQuantizedTime.Count;$t++)

{

$IsMinThresholdBroken = $False

$IsAvgThresholdBroken = $False

$IsMaxThresholdBroken = $False

$IsTrendThresholdBroken = $False

$IsMinEvaluated = $False

$IsAvgEvaluated = $False

$IsMaxEvaluated = $False

$IsTrendEvaluated = $False

If (($oCounterInstance.QuantizedAvg[$t] -ne '-') -and ($oCounterInstance.QuantizedAvg[$t] -ne $null))

{

If ($oCounterInstance.QuantizedAvg[$t] -gt 75)

{

$IsAvgThresholdBroken = $True

$IsAvgEvaluated = $True

}

}

If (($IsMinThresholdBroken -eq $True) -or ($IsAvgThresholdBroken -eq $True) -or ($IsMaxThresholdBroken -eq $True) -or ($IsTrendThresholdBroken -eq $True))

{

CreateAlert -TimeSliceIndex $t -CounterInstanceObject $oCounterInstance -IsMinThresholdBroken $IsMinThresholdBroken -IsAvgThresholdBroken $IsAvgThresholdBroken -IsMaxThresholdBroken $IsMaxThresholdBroken -IsTrendThresholdBroken $IsTrendThresholdBroken -IsMinEvaluated $IsMinEvaulated -IsAvgEvaluated $IsAvgEvaulated -IsMaxEvaluated $IsMaxEvaulated -IsTrendEvaluated $IsTrendEvaulated

}

}

}

------

Many Thanks,

Alex


From: [email removed]
To: [email removed]
Date: Tue, 18 Jan 2011 12:54:29 -0800
Subject: Re: Calculate average in the threshold [PAL:241669]

From: ClintH

Hi Alex,
Operating system counters such as % Processor Time are covered in the Quick System Overview threshold file. Why do you want to create a custom one?
Admittedly, I have not documented the creation of custom threshold files yet. If urgent, contact me directly at clinth@microsoft.com.

Read the full discussion online.
To add a post to this discussion, reply to this email (PAL@discussions.codeplex.com)
To start a new discussion for this project, email PAL@discussions.codeplex.com
You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com

Jan 20, 2011 at 9:42 PM
Same here Clint :) Crazy busy this week.
I'll will certainly test new version as soon as possible.

Best Regards,
Alex

From: [email removed]
To: [email removed]
Date: Tue, 18 Jan 2011 16:53:29 -0800
Subject: Re: Calculate average in the threshold [PAL:241669]

From: ClintH

Actually, the StaticThreshold function analyzes all of the quantized (time sliced) min, max, and average values – not every value. So it covers your average, min, and max values. I haven’t came across a case where I had to look at only one of them so far.

Can you describe the kind of analysis you are trying to do?

The reason I haven’t done the documention yet is simply because I only work on PAL during my free time. Lately, customer related work has been very busy, so I’ve had less and less time to work on it.

FYI. I am releasing a new minor version of PAL tonight (v2.0.6.)

From: Alex P [email removed]
Sent: Tuesday, January 18, 2011 3:20 PM
To: Clint Huffman; pal@discussions.codeplex.com
Cc: Mike Lagase
Subject: RE: Calculate average in the threshold [PAL:241669]


Thanks Clint,

This is exactly what I was doing. This seems to work for counter's current values, but to evaluate average, min or max in counter sets loops and CreateAlert function have to be used. And its getting even bit more complex when getting into trends and quantized time arrays.

That is why I think it would be awesome to put something together to demonstrate how to evaluate trends, min, max values.

Thanks again for your response, I think I got the hang of it to start.

Best Regards,
Alex



From: [email removed]
To: [email removed]; pal@discussions.codeplex.com
CC: mikelag@microsoft.com
Subject: RE: Calculate average in the threshold [PAL:241669]
Date: Tue, 18 Jan 2011 22:40:00 +0000

[Adding Mike Lagase who is the content owner]

Hi Alex,

It looks like you are trying to do a custom threshold and it looks fine, but you can accomplish the same thing relatively easily.

In the PAL Wizard, Edit the Exchange 2010 threshold file and locate the MSExchangeIS Client RPC Average Latency counter. Next, in the Thresholds section, click Add…



It will automatically populate the threshold for you, so all you have to do is set the threshold value in the highlighted line below.

If you are not getting these screenshots this email, then the line is:
StaticThreshold -CollectionOfCounterInstances $MSExchangeISClientRPCAverageLatencyALL -Operator 'gt' –Threshold 75



Click OK, Update Analysis, then File Save to save the changes.

Thank you,


From: Alex P [email removed]
Sent: Tuesday, January 18, 2011 2:08 PM
To: pal@discussions.codeplex.com; Clint Huffman
Subject: RE: Calculate average in the threshold [PAL:241669]


Hi Clint,

Thanks for replying.

My goal was to create a similar app to analyse Exchange 2010 performance using counter threshold from the below article:

But luckily I wound PAL and is already designed for all my needs :).

Its just that we (RIM support) have a lot cases related to Exchange 2010 SP1 performance issues and PAL can speeds things up for us and improve customers experience. Exchange 2010 threshold file provided with PAL, but it misses some critical thresholds like "MSExchangeIS Client (*)\RPC Average Latency".

I think I figured out average, should look something like below. But I would greatly appreciate if some kind of quick threshold guide will be posted at pal.codeplex.com:
-------
For ($i=0;$i -lt $CollectionOfProcessorPercentProcessorTime.Count;$i++)
{
$oCounterInstance = $CollectionOfProcessorPercentProcessorTime[$i]
For ($t=0;$t -lt $alQuantizedTime.Count;$t++)
{
$IsMinThresholdBroken = $False
$IsAvgThresholdBroken = $False
$IsMaxThresholdBroken = $False
$IsTrendThresholdBroken = $False
$IsMinEvaluated = $False
$IsAvgEvaluated = $False
$IsMaxEvaluated = $False
$IsTrendEvaluated = $False

If (($oCounterInstance.QuantizedAvg[$t] -ne '-') -and ($oCounterInstance.QuantizedAvg[$t] -ne $null))
{
If ($oCounterInstance.QuantizedAvg[$t] -gt 75)
{
$IsAvgThresholdBroken = $True
$IsAvgEvaluated = $True
}
}

If (($IsMinThresholdBroken -eq $True) -or ($IsAvgThresholdBroken -eq $True) -or ($IsMaxThresholdBroken -eq $True) -or ($IsTrendThresholdBroken -eq $True))
{
CreateAlert -TimeSliceIndex $t -CounterInstanceObject $oCounterInstance -IsMinThresholdBroken $IsMinThresholdBroken -IsAvgThresholdBroken $IsAvgThresholdBroken -IsMaxThresholdBroken $IsMaxThresholdBroken -IsTrendThresholdBroken $IsTrendThresholdBroken -IsMinEvaluated $IsMinEvaulated -IsAvgEvaluated $IsAvgEvaulated -IsMaxEvaluated $IsMaxEvaulated -IsTrendEvaluated $IsTrendEvaulated
}
}
}

------

Many Thanks,
Alex


From: [email removed]
To: [email removed]
Date: Tue, 18 Jan 2011 12:54:29 -0800
Subject: Re: Calculate average in the threshold [PAL:241669]

From: ClintH

Hi Alex,
Operating system counters such as % Processor Time are covered in the Quick System Overview threshold file. Why do you want to create a custom one?
Admittedly, I have not documented the creation of custom threshold files yet. If urgent, contact me directly at clinth@microsoft.com.

Read the full discussion online.
To add a post to this discussion, reply to this email (PAL@discussions.codeplex.com)
To start a new discussion for this project, email PAL@discussions.codeplex.com
You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com

Read the full discussion online.
To add a post to this discussion, reply to this email (PAL@discussions.codeplex.com)
To start a new discussion for this project, email PAL@discussions.codeplex.com
You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com
Apr 11, 2011 at 1:51 PM

Just come across this post as I've had a similar problem with v2.07 of PAL trying to get an Alert to work when say, a max value of 1 was hit or the overall Average for a counter hit 0.75.

Whilst the new PAL version is great for comparing a perfmon counters value to a threshold value it's difficult getting the format of the command right for when you want to compare to the Avg, Min, Max or Trend values.

The new PAL v2.07 does actually work these out for you it's just tricky getting the command format right.

For example, it's easy to get this working:

StaticThreshold -CollectionOfCounterInstances $CollectionOfMyCounter -Operator 'gt' -Threshold 1000

from the examples but to get the Avg, Min or Max say I found I had to add the word 'ALL' to the counter name and then add '.Max', eg

StaticThreshold -CollectionOfCounterInstances $CollectionOfMyCounterALL.Max -Operator 'ge' -Threshold 1

or

StaticThreshold -CollectionOfCounterInstances $CollectionOfMyCounterALL.Avg -Operator 'gt' -Threshold 0.75

Hope this helps,

Bry

May 31, 2013 at 2:50 PM
Hi,

I have read all this post but still do not understand how to trigger an alert against an average value.

For example, counter MSExchange ADAccess LDAP Search Time is the time taken to send an LDAP Search request, it is not an average value of the time taken.
So I want to calculate the average value for each time slice, and get an alert if this average value is above 50ms.

Do I need to do a custom script with a loop, or can I use a static threshold?
I've tried BryBarnard method, but it gives me an alert because hourly trend value is above the threshold.

Thanks,
Coordinator
Jun 6, 2013 at 8:41 AM
PAL divides the counter log into time slices and generates a minimum, average, maximum, and trend value for each counter instance for each time slice. The StaticThreashold function will compare the threshold to the minimum, average, and maximum values of each time slice. This means that the LDAP Search Time threshold will have a minimum, average, and maximum value based on the size of the time slices. If you only want one of the statistics to be analyzed, then you will need to do a much more complicated analysis involving manually looping through the counter collections. I do this for a few of the analysis, but you have to edit the XML of the threshold directly.
Jan 24 at 11:53 AM
I know this is an old post, but I have created two new functions detailed Here which achieves what you want.
Hope this helps.