시각화 만들기
GROUP BY 쿼리에 대응합니다. 즉, 선택한 차원에 대해 집계할 메트릭을 정의합니다.
예를 들어, 서비스 이름별로 그룹화한 오류 수(count())를 차트로 표시할 수 있습니다.
아래 예시에서는 sql.clickhouse.com에서 제공하는 원격 데이터셋을 사용하며, 이에 대한 설명은 가이드 “원격 데모 데이터세트”에 나와 있습니다. 또한 play-clickstack.clickhouse.com에 접속해 이 예시를 그대로 재현할 수도 있습니다.
Chart Explorer로 이동
왼쪽 메뉴에서Chart Explorer를 선택합니다.시각화 만들기
아래 예시에서는 서비스 이름별로 시간에 따른 평균 요청 지속 시간을 차트로 표시합니다. 이를 위해서는 메트릭, 컬럼(SQL 표현식일 수 있음), 집계 필드를 지정해야 합니다.상단 메뉴에서Line/Bar 시각화 유형을 선택한 다음 Traces 데이터셋(play-clickstack.clickhouse.com을 사용하는 경우 Demo Traces)을 선택합니다. 다음 값을 입력합니다:- Metric:
Average - Column:
Duration/1000 - Where:
<empty> - Group By:
ServiceName - Alias:
Average Time
WHERE 절 또는 Lucene 구문으로 필터링할 수 있으며, 이벤트를 시각화할 시간 범위도 설정할 수 있습니다. 여러 시리즈도 지원됩니다.예를 들어, 필터 ServiceName:"frontend"를 추가해 frontend 서비스만 필터링할 수 있습니다. Add Series를 클릭해 별칭을 Count로 지정한 두 번째 시리즈를 추가하면 시간에 따른 이벤트 수도 함께 표시할 수 있습니다.시각화는 메트릭, 트레이스, 로그 등 모든 데이터 소스에서 만들 수 있습니다. ClickStack은 이 모두를 wide events로 처리합니다. 모든 numeric column은 시간에 따라 차트로 표시할 수 있으며, string, date, numeric 컬럼은 그룹화에 사용할 수 있습니다.이 통합된 접근 방식을 통해 telemetry 타입 전반에서 일관되고 유연한 모델로 대시보드를 구축할 수 있습니다.
대시보드 만들기
대시보드로 이동
왼쪽 메뉴에서Dashboards를 선택합니다. 그런 다음 New Dashboard를 클릭하여 임시 대시보드 또는 저장된 대시보드를 만듭니다.시각화 생성 – 서비스별 평균 요청 시간
시각화 생성 패널을 열려면Add New Tile을 선택합니다.상단 메뉴에서 Line/Bar 시각화 유형을 선택한 다음 Traces 데이터셋(play-clickstack.clickhouse.com을 사용하는 경우 Demo Traces)을 선택합니다. 다음 값을 입력하여 시간 경과에 따른 서비스 이름별 평균 요청 시간을 보여주는 차트를 생성합니다.- 차트 이름:
Average duration by service - 메트릭:
Average - 컬럼:
Duration/1000 - Where:
<empty> - 그룹화 기준:
ServiceName - 별칭:
Average Time
Save를 클릭하기 전에 실행 버튼을 클릭합니다.시각화가 대시보드 전체 너비를 차지하도록 크기를 조정합니다.시각화 만들기 – 시간에 따른 서비스별 이벤트 수
시각화 생성 패널을 열려면Add New Tile을 선택합니다.상단 메뉴에서 Line/Bar 시각화 유형을 선택한 다음 Logs 데이터셋(play-clickstack.clickhouse.com을 사용하는 경우 Demo Logs)을 선택합니다. 서비스 이름별로 시간에 따른 이벤트 수를 보여주는 차트를 만들려면 다음 값을 입력합니다.- 차트 이름:
Event count by service - 메트릭:
Count of Events - 조건:
<empty> - 그룹화 기준:
ServiceName - 별칭:
Count of events
Save를 클릭하기 전에 실행 버튼을 클릭합니다.시각화 크기를 조정해 대시보드 전체 너비를 차지하도록 합니다.스팬 지속 시간용 히트맵 타일 추가
히트맵 타일은 각 (시간, 값) 버킷에 속하는 이벤트 수를 색상 격자로 표시합니다. 평균이나 단일 백분위수만 보는 것이 아니라, 시간에 따라 분포의 형태가 어떻게 달라지는지 보고 싶을 때 히트맵을 사용하십시오. 지연 시간 히트맵은 Line 차트에서는 평균값에 가려질 수 있는 이중 봉우리 지속 시간 패턴, 느린 구간의 군집, 또는 갑작스러운 확산을 보여 줍니다.히트맵 타일을 추가하려면 다음과 같이 하십시오.Add New Tile을 선택합니다.- 상단 메뉴에서
Heatmap시각화 유형을 선택합니다. 데이터 소스 드롭다운에는 소스 유형이Traces인 소스만 표시됩니다. 히트맵에는 traces 소스에서만 제공되는 스팬 지속 시간 컬럼이 필요하므로 logs, metrics, session 소스는 제외됩니다. - traces 소스 중 하나를 이름으로 선택합니다. 이름 자체는 임의이며, 중요한 것은 유형뿐입니다.
- Value: 소스의
Duration Expression이며, 현재 표시 단위에 맞게 조정됩니다(예: 각 이벤트의 스팬 지속 시간을 나노초에서 밀리초로 변환하는(Duration)/1e6) - Count:
count()
- 차트 이름을 설정하고,
Where를 사용해 성능을 관찰하려는 특정 서비스나 작업 집합으로 히트맵 범위를 제한합니다. - 관심 있는 기간에 맞게 시간 범위를 조정합니다. 더 넓은 범위를 사용하면 짧은 구간에서는 보이지 않을 수 있는 분포 변화와 이중 봉우리 지연 시간 패턴을 확인할 수 있습니다.
Run을 클릭해 차트를 미리 확인한 다음 Save를 클릭합니다.저장된 타일은 대시보드에 히트맵으로 표시됩니다. 셀 위에 마우스를 올리면 버킷 경계와 이벤트 수를 확인할 수 있습니다.Event Deltas로 드릴다운
렌더링된 히트맵 타일의 셀을 클릭하면 View in Event Deltas 작업이 열립니다.이 작업을 선택하면 타일의 데이터 소스,Where 절, 시간 범위가 그대로 유지된 상태로 Event Deltas 화면이 열립니다. 여기에서 동일한 분포를 대화형으로 살펴보고, 속성별로 나누어 느린 스팬이 빠른 스팬과 무엇이 다른지 확인할 수 있으며, 쿼리를 수동으로 다시 작성하지 않고도 각 셀에 해당하는 개별 스팬을 조사할 수 있습니다.대시보드 필터
시간 범위와 함께 Lucene 또는 SQL 필터를 대시보드 수준에서 적용할 수 있으며, 이 설정은 모든 시각화에 자동으로 반영됩니다.예를 들어, Lucene 필터ServiceName:"frontend"를 대시보드에 적용하고 시간 윈도우를 최근 3시간으로 변경하십시오. 이제 시각화에 frontend 서비스의 데이터만 반영되는 것을 확인할 수 있습니다.대시보드는 자동으로 저장됩니다. 대시보드 이름을 설정하려면 제목을 선택해 수정한 뒤 Save Name을 클릭하십시오.대시보드 - 시각화 편집
대시보드 - 목록 및 검색
대시보드 - 태그 지정
- 구성: 태그는 왼쪽 사이드바에 표시되며, 여기서 대시보드와 저장된 검색이 할당된 태그별로 그룹화됩니다
- 여러 태그: 더 세분화해 분류할 수 있도록 하나의 항목에 하나 이상의 태그를 추가할 수 있습니다
- 자동 생성: 아직 존재하지 않는 태그를 할당하면 해당 태그가 자동으로 생성됩니다
- 간편한 관리: 구성 체계를 조정할 수 있도록 언제든지 태그를 추가하거나 제거할 수 있습니다
사용자 지정 필터
필터 편집 대화상자 열기
저장된 대시보드를 열고 도구 모음에서 Edit Filters를 선택합니다.새 필터 추가
Add new filter를 클릭합니다. Name을 입력하고, Data source를 선택하고, Filter expression(드롭다운을 채울 고유값을 가져오는 SQL 컬럼 또는 표현식)을 입력해 필터를 구성합니다. 그런 다음 Save filter를 클릭합니다.예를 들어, trace 데이터용 서비스 필터를 추가하려면Traces 데이터 소스에서 ServiceName을 필터 표현식으로 사용합니다. “Dropdown values filter”는 선택 사항이며, 드롭다운에 표시할 값을 제한할 때 사용할 수 있습니다.Filters 모달에는 대시보드에 구성된 모든 필터가 표시됩니다. 여기에서 기존 필터를 편집하거나 삭제하고, 추가 필터를 더 만들 수 있습니다.필터 사용
Filters 모달을 닫습니다. 새 드롭다운 필터가 검색창 아래에 표시됩니다. 이를 클릭해 사용 가능한 값을 확인한 다음 하나를 선택하면 대시보드의 모든 시각화에 필터가 적용됩니다.(선택 사항) 필터 값을 기본값으로 저장
필터 선택을 대시보드 기본값으로 유지하려면 대시보드 메뉴에서 Save Query & Filters as Default를 선택합니다. 그러면 이후 대시보드는 선택한 필터가 적용된 상태로 항상 열립니다. 재설정하려면 같은 메뉴에서 Remove Default Query & Filters를 선택합니다.사용자 지정 드롭다운 필터는 저장된 대시보드에서 사용할 수 있습니다. 이 방식이 실제로 적용된 예시는 Kubernetes 대시보드를 참조하십시오. 이 대시보드에는 파드, 배포, 노드 이름, 네임스페이스, 클러스터용 기본 드롭다운 필터가 제공됩니다.
Search로 드릴다운
- 모든 이벤트 보기 — 선택한 시간 범위의 모든 이벤트를 표시하는 Search 페이지로 이동합니다.
- 그룹으로 필터링 — 특정 시리즈로 필터링된 Search 페이지로 이동합니다.
프리셋
ClickHouse 대시보드
필수 시스템 테이블 액세스이 대시보드는 주요 메트릭을 표시하기 위해 ClickHouse 시스템 테이블을 조회합니다. 다음 권한이 필요합니다.
GRANT SHOW COLUMNS, SELECT(CurrentMetric_MemoryTracking, CurrentMetric_S3Requests, ProfileEvent_OSCPUVirtualTimeMicroseconds, ProfileEvent_OSReadChars, ProfileEvent_OSWriteChars, ProfileEvent_S3GetObject, ProfileEvent_S3ListObjects, ProfileEvent_S3PutObject, ProfileEvent_S3UploadPart, event_time) ON system.metric_logGRANT SHOW COLUMNS, SELECT(active, database, partition, rows, table) ON system.partsGRANT SHOW COLUMNS, SELECT(event_date, event_time, memory_usage, normalized_query_hash, query, query_duration_ms, query_kind, read_rows, tables, type, written_bytes, written_rows) ON system.query_logGRANT SHOW COLUMNS, SELECT(event_date, event_time, hostname, metric, value) ON system.transposed_metric_log