Repository 호출·소요시간 패널 추가 - #942
Conversation
- 메트릭 한도 조사(TeamPiKi/infra#42)에서 spring_data_repository 지표가 384 시리즈를 쓰면서 대시보드·알림 참조가 0건인 것이 드러났다. 지우는 대신 뷰에 올려 값어치를 쓰는 쪽을 택했다 - 역할 분담: 트레이스의 JDBC 스팬은 단건 맥락을, 이 패널은 추세를 본다("어느 조회가 갑자기 늘었나·느려졌나") - 처음엔 topk(10) + repository·method 단위로 만들었으나 라이브 확인에서 범례가 40개 넘게 불어났다. topk 는 시점마다 상위를 다시 고르므로 range 조회에서는 그동안 순위에 들어온 시리즈가 범례에 누적된다. repository 단위(17개 고정)로 바꿔 topk 자체를 걷어냈다 - 의존성 row 에 배치(HikariCP 옆). 그 아래 패널들의 y 를 4씩 내렸다 - 검증: 라이브 반영 후 prod 에서 두 패널 모두 데이터 렌더 확인(19 시리즈·181 포인트). 데이터소스 timeInterval 이 이미 60s 라 $__rate_interval 이 수집 주기 60s 전환과도 정합
|
Discord 스레드 연동용 메타데이터입니다. discord-pr-bot 워크플로가 자동 생성하며, 수정·삭제하면 PR 과 Discord 알림 연동이 끊깁니다. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
WalkthroughGrafana 대시보드에 Repository별 호출률과 평균 소요시간 패널을 추가했습니다. 기존 리소스, 로그, 파싱·추출 관측 패널의 세로 위치를 새 패널에 맞게 조정했습니다. ChangesRepository 관측 대시보드
Estimated code review effort: 2 (Simple) | ~10 minutes Mergeability Score: ⚪ Minimal · up to This PR adds repository call-rate and average-duration panels to the dashboard without introducing an actionable merge-blocking risk; it is merge-ready after normal checks and review. 연결 이슈 검증
🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Situation
spring_data_repository_invocations_seconds_*가 384 시리즈를 쓰면서 대시보드·알림 어디에서도 참조가 0건인 것이 드러났다.Task
Action
의존성 row(HikariCP 옆)에 패널 2개를 추가했다.
sum by (repository) (rate(..._count[$__rate_interval]))sum by (repository) (rate(..._sum[...])) / 같은 그룹의 _count설계를 한 번 뒤집은 이유 (topk 함정)
처음엔
topk(10, ...)+repository·method단위로 만들었다. 라이브에 반영해 눈으로 확인하니 범례가 40개 넘게 불어나 그래프를 덮었다.원인은
topk의 성질이다 — range 조회에서 topk 는 시점마다 상위 10개를 다시 고르므로, 6시간 구간에서는 그동안 한 번이라도 순위에 든 시리즈가 전부 범례에 누적된다. method 단위는 48개 조합이라 특히 심했다.repository단위로 바꾸니 17개로 고정되어 topk 자체가 불필요해졌고, 범례가 안정적이며 시점별 변동도 사라졌다. 메서드 단위 상세가 필요하면 트레이스로 내려가면 되므로 잃는 것도 없다.배치
의존성 row 안 새 줄(y=32)에 좌우 반반(w=12)으로 넣고, 그 아래 패널들의 y 를 4씩 내렸다. 좌표 중복이 없음을 스크립트로 확인했다.
Result
timeInterval이 이미60s로 잡혀 있어, 수집 주기를 60초로 바꾸는 변경(메트릭 카디널리티 누수 차단과 수집 주기 60s 조정 infra#44)과도 정합이다. 대시보드의 rate 창은 전부$__rate_interval이라 하드코딩된 창이 없다.연관 이슈
Summary by CodeRabbit