Question:
How do Smartstor Tiers Affect the way Data Points are Calculated and Reported in Introscope?
Answer:
What are Smartstor Tiers?
Metrics in Introscope are stored in the Smartstor database according to 3 frequency settings, known as Smartstor Tiers. These tiers are defined in the IntroscopeEnterpriseManager.properties file and determine how long Introscope stores data at a specific granularity. Out of the box, these settings are….
introscope.enterprisemanager.smartstor.tier1.frequency=15
introscope.enterprisemanager.smartstor.tier1.age=7
introscope.enterprisemanager.smartstor.tier2.frequency=60
introscope.enterprisemanager.smartstor.tier2.age=23
introscope.enterprisemanager.smartstor.tier3.frequency=900
introscope.enterprisemanager.smartstor.tier3.age=335
…where frequency represents a time in seconds and age represents a time in days. Using the settings above, Introscope data points will be stored at a frequency of 15 seconds for the first 7 days after which they are recorded. After a week has passed, as part of the Smartstor reperiodization, these data points are re-aggregated and stored only at a frequency of 1 minute. After 23 days has passed, that frequency becomes 15 minutes.
What are metrics in Introscope?
Introscope agents continuously receive data points for the application they monitor and feed this data back to the Enterprise Manager.
This data is aggregated by the Enterprise Manager so that a single data point, representative of 15 seconds of monitoring performed by the agent, is reported to the end user.
Each of these data points in Introscope are comprised of 4 separate numerical values. These are...
Value - The actual result determined by Introscope after aggregating all data points received for that metric for that interval.
Max - The highest recorded value for a metric as reported by the agent to the EM during that interval.
Min - The lowest recorded value for a metric as reported by the agent to the EM during that interval.
Count - The number of data points recorded and aggregated by Introscope during that interval.
So how are metrics recalculated as they move through Smartstor tiers?
The answer depends on the data counter used to record a metric. Introscope uses a number of different data counters to record incoming information. These data counters tell Introscope how to aggregate the values received from an agent. For example, metrics such as Responses per Interval or Errors per Interval use a per interval counter which sums incoming data points while CPU Percentage uses a percentage and a normal average is used. As data moves through Smartstor tiers, the value reported is recalculated depending on the counter type:
Counter Derived Metric Aggregation Performed
Per Interval Counter Responses Per Interval Data points are summed
Errors Per Interval
Duration (Percentage) Average Response Time Weighted Average (Count1 * Value1 + Count 2*Value2 +….)/(Sum of the Counts)
Percentage % CPU Unweighted Average (Value1 + Value2 + …)/(number of values)
Fluctuating Counter Bytes In Use The highest value reported over the interval is used
This list is not exhaustive, but meant to provide an overview of aggregation due to Smartstor tiers. As for the maximum, minimum, and count metrics, these recalculations are straightforward. The max will report the highest value observed over an interval, the min likewise will report the lowest value. Count will be the sum of the counts of each data point in the interval. Here is a specific example showing a CPU Percentage Metric would be recalculated:
Consider the following four CPU Percentage Metrics reported over a minute time period….
Time Value Min Max Count
15:22:15 5% 0% 7% 5
15:22:30 10% 3% 12% 5
15:22:45 10% 5% 12% 5
15:23:00 5% 0% 8% 5
When these four data points are moved from Tier 1 storage to Tier 2 storage in Smartstor, they are combined into a single data point. The value reported, because this is a percentage metric, will be the average of the 4 data point reported above. In this example, 7.5% would be reported, calculated as (5+10+10+5)/4. The lowest minimum values is reported as the min, 0% in this case and the maximum of the max values is likewise reported for max or 12% in this example. Finally, the counts are summed together for each data point, giving a count of 20 in this example. This same logic is applied again when moving from Tier 2 to Tier 3 storage.