@@ -28,21 +28,28 @@ const ONE_MINUTE = 60;
2828const ONE_HOUR = ONE_MINUTE * 60 ;
2929const ONE_DAY = ONE_HOUR * 24 ;
3030const ONE_WEEK = ONE_DAY * 7 ;
31+ const ONE_MONTH = ONE_DAY * 30 ;
32+
33+ const getDisplayInterval = ( interval : string | undefined ) => {
34+ if ( interval ) {
35+ const intervalInSeconds = getIntervalInSeconds ( interval ) ;
36+ if ( intervalInSeconds < 300 ) return '5m' ;
37+ }
38+ return interval ;
39+ } ;
3140
3241const getTimeLengthFromInterval = ( interval : string | undefined ) => {
3342 if ( interval ) {
3443 const intervalInSeconds = getIntervalInSeconds ( interval ) ;
35- const multiplier =
36- intervalInSeconds < ONE_MINUTE
37- ? ONE_HOUR / intervalInSeconds
38- : intervalInSeconds < ONE_HOUR
39- ? 60
40- : intervalInSeconds < ONE_DAY
41- ? 7
42- : intervalInSeconds < ONE_WEEK
43- ? 30
44- : 1 ;
45- const timeLength = intervalInSeconds * multiplier ;
44+ // Get up to 288 datapoints based on interval
45+ const timeLength =
46+ intervalInSeconds <= ONE_MINUTE * 15
47+ ? ONE_DAY
48+ : intervalInSeconds <= ONE_MINUTE * 35
49+ ? ONE_DAY * 3
50+ : intervalInSeconds <= ONE_HOUR * 2.5
51+ ? ONE_WEEK
52+ : ONE_MONTH ;
4653 return { timeLength, intervalInSeconds } ;
4754 } else {
4855 return { timeLength : 0 , intervalInSeconds : 0 } ;
@@ -67,15 +74,19 @@ export function useTimeline(
6774 ) ;
6875 } ;
6976
70- const timeLengthResult = useMemo ( ( ) => getTimeLengthFromInterval ( interval ) , [ interval ] ) ;
77+ const displayInterval = useMemo ( ( ) => getDisplayInterval ( interval ) , [ interval ] ) ;
78+
79+ const timeLengthResult = useMemo ( ( ) => getTimeLengthFromInterval ( displayInterval ) , [
80+ displayInterval ,
81+ ] ) ;
7182 const { timeLength, intervalInSeconds } = timeLengthResult ;
7283
7384 const timerange : InfraTimerangeInput = {
74- interval : interval ?? '' ,
85+ interval : displayInterval ?? '' ,
7586 to : currentTime + intervalInSeconds * 1000 ,
7687 from : currentTime - timeLength * 1000 ,
77- lookbackSize : 0 ,
7888 ignoreLookback : true ,
89+ forceInterval : true ,
7990 } ;
8091
8192 const { error, loading, response, makeRequest } = useHTTPRequest < SnapshotNodeResponse > (
0 commit comments