Grafana에 대해 SQL 쿼리로 선택한 시간 간격을 기반으로 동적으로 가동 시간 계산
시간(15분 간격) 대비 SQL(mariaDB)에 저장된 데이터가 있습니다.이제 이 데이터는 엔티티의 성능을 결정합니다. 즉, 이 데이터는 초당 15분 간격 내에서 0부터 900까지의 모든 값을 취할 수 있는 문제가 있습니다.이제 모든 시간 간격 기간에 대해 그룹화하고 영향을 받은 총 초를 쉽게 플롯할 수 있습니다.
Parameter_health Database에 두 개의 테이블이 포함되어 있습니다.
- parameter_detail 테이블에는 매개 변수에 대한 고정 데이터 정보가 포함되어 있습니다.
- parameter_uasvalue 테이블에는 해당 매개 변수에 대한 시간에 대해 15분 간격으로 사용할 수 없는 초(UAS)가 포함되어 있습니다.
주어진 간격 동안 총 UAS에 대해 각 값으로 막대 그래프를 그리기 위해 Grafana에서 사용되는 쿼리는 완벽하게 작동합니다 ---
SELECT
parameter_detail.system,
parameter_detail.parameter_label,
sum(parameter_uasvalue.uas) as 'Total UAS'
FROM parameter_health.parameter_uasvalue
left join parameter_health.parameter_detail on
parameter_detail.id=parameter_uasvalue.id
WHERE $__timeFilter(parameter_uasvalue.time)
and parameter_uasvalue.uas != '-1' and parameter_uasvalue.uas !=' 0'
GROUP BY parameter_detail.system, parameter_detail.parameter_label
이제 이 값(총 UAS)을 사용하여 $_time인 매개 변수의 가동 시간을 계산하는 방법은 무엇입니까?필터(그라파나에서 선택) - 'Total UAS'를 $_time으로 나눈 값필터 * 100
하지만 변동 $_time을 기반으로 동적으로 작동하도록 이 쿼리를 어떻게 수정할 수 있는지 잘 모르겠습니다.해당 파라미터의 가동 시간 %를 필터링 및 계산하여 시간 범위가 0 ~ 4시간(아래 데이터의 경우)인 경우와 같이 막대 그래프에 플롯되도록 합니다. 그러면 총 초수는 14400초(각각 15분의 16개 간격)이고 현재 총 UAS는 3230입니다.따라서 가동 시간은 ((14400 - 3230)/14400)*100입니다.
문제는 __timeFilter 변수를 사용하여 동적으로 계산하는 방법입니다.
이드 | 시간을 | uas |
---|---|---|
모수-고유값1 | 15/11/2021 0:00 | 0 |
모수-고유값1 | 15/11/2021 0:15 | 100 |
모수-고유값1 | 15/11/2021 0:30 | 900 |
모수-고유값1 | 15/11/2021 0:45 | 30 |
모수-고유값1 | 15/11/2021 1:00 | 0 |
모수-고유값1 | 15/11/2021 1:15 | 0 |
모수-고유값1 | 15/11/2021 1:30 | 400 |
모수-고유값1 | 15/11/2021 1:45 | 900 |
모수-고유값1 | 15/11/2021 2:00 | 0 |
모수-고유값1 | 15/11/2021 2:15 | 0 |
모수-고유값1 | 15/11/2021 2:30 | 0 |
모수-고유값1 | 15/11/2021 2:45 | 400 |
모수-고유값1 | 15/11/2021 3:00 | 500 |
모수-고유값1 | 15/11/2021 3:15 | 0 |
모수-고유값1 | 15/11/2021 3:30 | 0 |
모수-고유값1 | 15/11/2021 3:45 | 0 |
모수-고유값1 | 15/11/2021 4:00 | 0 |
언급URL : https://stackoverflow.com/questions/70121913/calculate-uptime-dynamically-based-on-time-interval-chosen-with-sql-query-for-gr
'programing' 카테고리의 다른 글
시간 초과 jQuery 효과 (0) | 2023.08.20 |
---|---|
Powershell 모듈에서 "헬퍼" 기능을 숨기는 방법 (0) | 2023.08.20 |
인쇄 스타일 시트를 개발하고 테스트하는 더 빠른 방법(매번 인쇄 미리 보기 사용 안 함) (0) | 2023.08.20 |
Ubuntu에서 apt-get 업데이트를 실행할 때 Docker Repository에 릴리스 파일이 없음 (0) | 2023.08.20 |
어떻게 하면 트위터 부트스트랩 하위 메뉴를 왼쪽에서 열 수 있습니까? (0) | 2023.08.20 |