Skip to content

[Feat] RAGOps Dashboard 집계 지표 조회 API #134

Description

@kangcheolung

📌 Description

관리자가 시스템 전체 상태를 숫자로 파악할 수 있도록 문서/작업/Worker/검색 현황 집계 API를 제공합니다.

GET /admin/dashboard/summary
  • ADMIN 역할만 접근 가능
  • documents, document_versions, embedding_jobs, worker_nodes, search_queries를 읽기 전용으로 집계
  • 신규 dashboard 도메인으로 생성 (자체 테이블 없음, A 담당자 소유 테이블만 조회)

✅ To-do

  • dashboard 도메인 패키지 구조 생성 (controller/dto/response/service/query)
  • DocumentRepository, EmbeddingJobRepository, WorkerNodeRepository, SearchQueryRepository에 상태별 count 쿼리 추가
  • 평균 임베딩 처리 시간 집계 쿼리 추가
  • EmbeddingJobRepository에 FAILED 상태 목록 조회 메서드 추가 (예: findAllByStatus) — 이슈3 전체 재처리에서 내부적으로 재사용
  • DashboardSummaryResponse DTO 및 DashboardQueryService 구현
  • DashboardController(GET /admin/dashboard/summary) 구현
  • 단위 테스트 작성

✅ 완료 기준

  • 문서/작업/Worker/검색 4개 카테고리 지표가 정확히 집계되어 반환된다
  • ADMIN이 아닌 사용자 접근 시 403
  • 모든 쿼리가 SELECT 전용이며 A 소유 데이터에 쓰기가 없다

📒 기타

  • 상세 설계: docs/design/{github아이디}-#{이슈번호}-ragops-dashboard-summary.md
  • 후속 이슈(WebSocket push)가 이 집계 로직을 그대로 재사용함

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions