기록된 쿼리
기록된 쿼리 (Recorded queries, deprecated)
recorded queries(기록된 쿼리)는 설정한 간격으로 데이터 포인트의 스냅샷을 찍어 시간에 따른 추세를 볼 수 있게 해줘요. 다만 이 기능은 더 이상 사용되지 않으며(deprecated), 대신 Grafana-managed recording rules를 사용할 것을 권장해요.
출처: 문서
본문
Warning
Recorded queries는 더 이상 사용되지 않아요(deprecated). 새로운 Grafana-managed recording rules를 사용해 주세요. recorded queries를 Grafana-managed recording rules로 마이그레이션하는 방법은 마이그레이션 문서를 여기에서 참고할 수 있어요.
Recorded queries는 설정한 간격으로 데이터 포인트의 스냅샷을 찍어 시간에 따른 추세를 볼 수 있게 해줘요. 이를 통해 과거 추세에 대한 통찰을 얻을 수 있어요.
시계열을 반환하지 않는 플러그인의 경우 과거 데이터를 그리는 것이 유용할 수 있어요. 예를 들어 ServiceNow를 쿼리해 요청 응답 시간의 이력을 보고 싶지만, 서비스가 현재 시점의 메트릭만 반환할 수 있는 경우가 있어요.
Note
Grafana Enterprise와 Grafana Cloud에서 사용할 수 있어요.
recorded queries 작동 방식 (How recorded queries work)
Note
recorded queries를 사용하려면 먼저 관리자가 Prometheus 데이터 소스를 구성하고 이를 Remote write target과 연결해야 해요.
Recorded queries는 백엔드 데이터 소스 플러그인에서만 작동해요. 백엔드 데이터 소스 플러그인에 대한 자세한 내용은 Backend data source plugin을 참고해요. 네 가지 유형의 쿼리를 기록할 수 있어요:
- single row and column - 단일 행과 열을 반환하는 쿼리
- row count - 개수에 의미가 있는 행을 반환하는 쿼리
- expression - 모든 표현식. 표현식 쿼리 생성·사용에 대한 자세한 내용은 Write expression queries를 참고해요.
- dataplane numeric - dataplane numeric kind 데이터를 반환하는 쿼리
recorded query가 생성되거나 활성화되면 즉시 스냅샷을 만들고 설정된 간격으로 계속 스냅샷을 만들어요. recorded query는 비활성화되거나, 삭제되거나, Grafana가 실행되지 않을 때 스냅샷 생성을 중단해요. 데이터 포인트는 백엔드에서 recorded query를 실행하고 각 결과를 remote-write가 활성화된 Prometheus 인스턴스로 전달해 수집돼요.
recorded query 사용하기 (Using a recorded query)
recorded query를 사용하려면 하나를 만들고 대시보드에 추가해요. 그 후 Preferences의 Recorded queries 탭에서 관리할 수 있어요.
recorded query 만들기 (Create a recorded query)
- 대시보드의 편집 패널에서 기록하려는 쿼리를 찾거나 만들어요. 쿼리는 단일 행과 열만 반환해야 해요. 더 많이 반환한다면 "count" 옵션을 사용해 반환된 결과 수를 기록할 수 있어요. 쿼리의 데이터 소스는 백엔드 데이터 소스여야 해요. 시계열 쿼리에서 데이터를 집계하려면 표현식을 사용할 수 있어요. 표현식을 참고해 생성·사용 방법을 배워보세요.
- 쿼리 편집기 오른쪽 상단에 있는 record query 버튼을 클릭해요.
- recorded query 정보를 입력해요. 달리 표시되지 않는 한 모든 필드는 필수예요.
- Name - recorded query의 이름
- Description - (선택) recorded query 목록에 표시되길 원하는 설명
- Interval - 스냅샷이 찍히는 간격. 간격은 recorded query를 만들 때 시작되고, 일시중지하거나 삭제하면 중단돼요. 일시중지·삭제에 대한 자세한 내용은 Managing recorded queries를 참고해요.
- Range - 쿼리의 상대 시간 범위.
30m범위와1h간격을 선택하면 쿼리가 지난 30분을 매시간 스냅샷으로 찍어요. - Count query results - 쿼리에서 반환된 행 수를 세고 싶다면 이 옵션을 켜요. 이 옵션이 꺼져 있으면 쿼리는 하나의 값을 가진 하나의 행을 반환해야 해요.
- test recorded query 버튼을 클릭해 recorded query를 테스트해요.
Start recording query를 클릭해 쿼리 기록을 시작해요.
recorded query 추가하기 (Add a recorded query)
대시보드의 패널에 기존 recorded queries를 추가할 수 있어요. 추가하는 각 recorded query마다 Prometheus 쿼리가 생성돼요: generated_recorded_query_name{id="generated_id", name="recorded query name"}. 생성된 Prometheus 쿼리는 해당 recorded query가 수집한 모든 스냅샷을 반환해요.
- recorded query를 추가하려는 대시보드의 패널로 이동해요.
- 쿼리 아래에 있는
+ Recorded query버튼을 클릭해요. - 데이터 소스별로 recorded queries를 필터링하고 싶다면 filter by data source 드롭다운 메뉴에서 데이터 소스를 선택해요.
- recorded query에서
Add버튼을 클릭해 패널에 추가해요.
패널에 recorded query를 추가하면 패널 데이터 소스가 -- Mixed --가 돼요. recorded query는 이름 라벨이 recorded query 이름과 일치하는 Prometheus 쿼리로 표시돼요. Prometheus 데이터 소스에 대한 자세한 내용은 Prometheus를 참고해요.
recorded query를 추가한 후 Prometheus 데이터 소스 대신 -- Mixed -- 데이터 소스가 있는 쿼리가 나타난다면, recorded queries용 Prometheus remote write target이 설정되지 않았음을 의미할 수 있어요. remote write 지점을 설정하려면 Remote write target을 참고해요.
recorded queries 관리하기 (Manage recorded queries)
Recorded queries는 Preferences의 Recorded queries 탭에서 일시중지/활성화하고 삭제할 수 있어요. recorded query를 삭제하면 Grafana에서 제거되지만 Prometheus에 수집된 정보는 그대로 남아 있어요. recorded query를 일시중지하면 다시 재개하기 전까지 새로운 데이터 포인트를 수집하지 않아요.
Remote write target
Remote write target은 recorded query 데이터 포인트가 기록되는 Prometheus 데이터 소스예요. remote write가 활성화된 Prometheus가 필요하고, 이 Prometheus용 데이터 소스를 만들어야 해요.
Remote write target은 Preferences의 Recorded Queries 탭 오른쪽 상단의 Edit Remote Write Target을 클릭해 편집할 수 있어요. remote write가 활성화된 Prometheus 데이터 소스를 선택하고 remote write 경로를 입력해요.