펄스

펄스 (Pulse)

Pulse는 Observations 테이블 위의 컴팩트한 차트 스트립이에요. 각 바는 시간 조각을 덮으며 기본적으로 observation 수를 보여줘요. 총 소요 비용 또는 p95 지연시간을 보는 데도 사용할 수 있어요. 찾고 있는 스파이크는 정렬해서 찾아야 하는 행이 아니라 높은 바예요. 스파이크를 클릭하거나 드래그하면 테이블이 그 창으로 좁혀져요.

출처: 문서

본문

Pulse는 Observations 테이블 위의 컴팩트한 차트 스트립이에요. 각 바는 시간 조각을 덮으며 기본적으로 observation 수를 보여줘요. 총 소요 비용 또는 p95 지연시간을 보는 데도 사용할 수 있어요. 찾고 있는 스파이크는 정렬해서 찾아야 하는 행이 아니라 높은 바예요. 스파이크를 클릭하거나 드래그하면 테이블이 그 창으로 좁혀져요.

Pulse는 Langfuse v4 observations-first 데이터 모델에서 실행돼요. 메인 Observations 테이블 위에 나타나며, 테이블이 단일 사용자·세션으로 범위가 제한되면 표시되지 않아요. 셀프호스팅 배포에서는 Langfuse v4로 업그레이드한 후 사용할 수 있어요.

Pulse는 Observations 테이블 위에서 항상 켜져 있어요.

각 바가 보여주는 것 (What each bar shows)

각 바는 하나의 시간 버킷이에요. 높이는 그 버킷의 이벤트 단일 집계이므로, 높은 바는 눈에 띄는 버킷을 뜻해요: 고볼륨, 고비용, 또는 느린 창.

바는 선택한 전체 시간 범위를 가로질러요. 이벤트가 없는 버킷은 없는 공간이 아니라 기준선의 갭이므로, 조용한 구간은 평평한 기준선으로 읽히고 스파이크는 그것과 대비되어 눈에 띄어요. 바는 제곱근 높이 스케일을 사용해요: 실제 count·cost·latency 이상치는 기본 부하의 몇 배일 수 있고, 선형 스케일은 피크를 제외한 모든 것을 평평하게 만들기 때문이에요. 이 스케일은 기본 부하를 읽기 가능하게 유지하면서 이상치가 여전히 우세하게 해줘요.

버킷 너비는 범위와 가용 너비에 적응해요. Langfuse는 1분부터 1주까지 범위를 스트립에 맞추는 가장 정밀한 버킷을 골라서, 1시간 범위와 1개월 범위 모두 스트립을 바들로 채워요.

바를 호버하면 시간 버킷, 메트릭 값, 그 안에 포함된 이벤트 수를 읽을 수 있어요. 버킷에 이벤트가 있는데 현재 메트릭에 값이 없으면, 바는 높이 대신 희미한 활동 틱(activity tick)을 보여줘요. 그래서 메트릭이 없어도 "아무 일도 없었다"고 읽히지 않아요. 범위에 전혀 이벤트가 없으면 스트립은 "No events in range"로, 이벤트가 있지만 현재 메트릭을 갖지 않으면 "No [metric] data in range"로 읽혀요.

메트릭 모드 (Metric modes)

스트립 왼쪽의 드롭다운이 바가 그리는 것을 전환해요:

  • Count — 각 버킷의 observation 수. 기본값이에요.
  • Cost — 각 버킷의 총 지출.
  • Latency — 버킷이 얼마나 느렸는지: 기본적으로 p95, 메트릭 이름 옆의 두 번째 드롭다운에서 중앙값(p50) 사용 가능.

메트릭과 집계 선택은 방문 간 기억돼요.

이상치로 이동 (Navigate to an outlier)

Pulse는 스파이크 발견을 스파이크로 이동으로 바꿔줘요.

  • 바를 클릭하면 테이블의 시간 범위가 그 버킷으로 좁혀져 정확히 스파이크의 이벤트를 보여줘요.
  • 여러 바에 걸쳐 드래그하면 더 넓은 범위를 선택해요. 선택은 놓을 때 적용돼요.
  • 브라우저 뒤로가기가 시작한 범위로 돌려보내 탐색에 비용이 들지 않아요.

빈 버킷은 보여줄 것이 없으므로 이동하지 않아요.

터치 기기에서는 탭이나 드래그가 즉시 범위를 바꾸지 않고 고정된 툴팁과 "Explore this window" 액션으로 범위를 미리보여줘서, 실수로 터치해도 이동하지 않아요.

적용하는 필터 (Filters it applies)

Pulse는 아래 Observations 테이블과 같은 필터링된 쿼리를 그려요. 시간 범위, 사이드바 패싯, 검색 바가 모두 전달돼요.

시간 경과에 따른 집계로 표현할 수 없는 일부 필터는 스트립이 적용할 수 없어요:

  • 필터로 쓰이는 숫자 측정값(latency, cost, token 값으로 필터링). Cost와 latency는 여전히 스트립 메트릭으로 사용 가능해요. 값으로 행을 필터링하는 것만 불가능해요.
  • Scores, metadata, comments 필터.
  • 전체 텍스트 검색과 필드 범위 텍스트 검색 (input:, output:).
  • 존재 여부 검사 (has:와 -has:).

이중 아무 필터·검색이 활성화되면 Pulse는 필터링된 테이블을 대표하지 않는 집계 데이터를 보여주는 대신 스트립을 비활성화해요. 테이블은 사용 가능하고 활성 필터를 계속 존중해요.

Pulse와 테이블 차트 (Pulse and charting the table)

Pulse와 Chart any table 둘 다 Observations 테이블의 데이터를 그리지만 다른 질문에 답해요. Pulse는 이상치를 찾아 이동하기 위한 테이블 위의 상시 스트립으로, 시간 버킷당 하나의 바예요. 테이블 차트는 같은 필터링된 쿼리의 완전하고 구성 가능한 차트(유형, 메트릭, 집계, breakdown)로 테이블을 대체하며 대시보드에 저장할 수 있어요. Pulse로 스파이크를 발견하고 드릴다운하고, 뷰를 만들고 유지하고 싶을 때는 차트로 전환하세요.

더 알아보기 (Learn more)

  • Chart any table
  • Filter Search Bar

더 알아보기 (Learn more)