Dx Dashboards Data Aggregation (How to turn off or use another metric type that does not aggregate)
search cancel

Dx Dashboards Data Aggregation (How to turn off or use another metric type that does not aggregate)

book

Article ID: 248715

calendar_today

Updated On:

Products

DX APM SaaS

Issue/Introduction

I want to be able to show data without aggregations over multiple time periods.

On a particular metric, anything after "Last 12 Hours" for the time selector, the data is summed up. After reading the documentation for the metric types, it explains that when the data is spread across multiple time frames, that it will be summed or averaged based on metric type.

Currently, we are using "LongCounter" and "PerIntervalCounter" to ingest the metrics, but both will aggregate data. In the use case of needing to see back a week and have the exact data how it was displayed, are there any other metric types that don't aggregate with time?

As seen in the attached screenshots, one is at 12 hours and the other is at 24 hours. Once the data is at 24 hours, the duration times are summed up. If there is a way to not do that, it would be very helpful for the POC we are doing for a client.

 

Environment

Release :

Component :

Resolution

1. Every 15 seconds we store only one datapoint for metric (datapoint consists of value, min, max in that interval and count I.e., number of values received for metric during that 15 seconds interval from that agent) for metric. During 15 seconds interval send 1 datapoint so datapoint will be same as customer sent(min,max, value will be same). This will address what customer asking.

2. However from UI if change frequency more than 15seconds than we have to aggregate that datapoints based on metric type and show value(since UI we can't display every 15 seconds value). Eg: frequency is 30 seconds we will combine 2-15 second interval and come up with one value,min, max based on metric type by doing aggregation (so during that 30 second frequency we have one datapoint aka value).

3. OOB we adjust frequency(15seconds, 30 seconds, 1 min so on) based on timerange of data selected from UI(eg: 1 day timerange user selects we automatically consider frequency as 5min so on and display metric value for every 5 min interval, this is where use of actual metric type) so that the user can see data at UI from the capabilities we have(no other competitors currently have 15 seconds monitoring capabilities and report issue next 15 seconds interval through alerts, at so on).

4. Best practice is use metric type as per requirement from metric types defined.

5. Since this is the DX-Dashboard where we want to control aggregation/calculation within 12 hours, 24 hours we have a NassQL where we can can query with specified frequency and do calculation as well (avg, sum, max so on)on top of data received. But this is currently used by Broadcom-IT and not documented yet. Our dx-dashboard team can help further on this and share with customer after checking with our team. (However for me, querying with lower frequency and doing aggregation is not recommended approach)

When longer time-ranges selected we have to aggregate to display value in UI(as we have multiple values).