Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[Feature] Add Monitor page to Canopy

Đang mở
#13,992 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@pallavithegod đang làm issue này rồi.

Từ ngày 15/10/2026.

  • #1414 của @pallavithegod — đang mở

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Sôi nổi
Công nghệ
prometheus

Hướng nghiên cứu

Bắt đầu bằng việc xem xét docs/operation/observability/metrics.md và liệt kê các HTTP endpoint cùng các metric của BanyanDB cho những phần được đề xuất. Ghi lại bố cục và cách tiếp cận lấy dữ liệu trong canopy/docs/monitor-design.md, sau đó kiểm tra sidebar Canopy hiện có và các vị trí test trong canopy/e2e/. Công việc được xem là hoàn tất khi có một kế hoạch thiết kế và triển khai có phạm vi rõ ràng, bao quát route /monitor, các trạng thái đang tải/lỗi, hành vi làm mới, việc thực thi vai trò và các test.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

database feature

Summary

Introduce a Monitor page in the Canopy web console that surfaces BanyanDB cluster/runtime health, key metrics, and node status — giving operators a single place to observe the state of the database from the UI.

Motivation

Today Canopy focuses on schema CRUD and ad-hoc query (Groups, Streams, Measures, Traces, IndexRules, Properties, TopN pipelines). There is no dedicated surface for runtime/cluster observability. Operators currently have to rely on:

  • raw BanyanDB HTTP endpoints,
  • external Prometheus/Grafana dashboards,
  • log scraping.

A first-class Monitor page in Canopy lowers the operational bar and complements the existing schema/query UI.

Goals

  • A new top-level Monitor entry in the Canopy sidebar.
  • Pulls data from BanyanDB's existing observability surface (HTTP API + Prometheus metrics where applicable).
  • Renders key health signals and recent trends.
  • Role-gated: available to admin (and possibly readonly).

Scope (suggested sections — refine during design)

  1. Cluster overview — node list, liveness, role (liaison/data), version, uptime.
  2. Shard / group status — per-group shard health, replica state, hot-node distribution (reuses concepts from existing BYDB-Replica work).
  3. Storage metrics — disk usage per node/path, segment counts, sidx/inverted-index sizes, write amplification (sourced from docs/operation/observability/metrics.md).
  4. Query metrics — QPS, p50/p95/p99 latencies, error rate, slow-query top-N (mirrors the existing banyandb_* metrics).
  5. Recent events / alerts — last N warnings/errors from BanyanDB (if surfaced via API) and any active TopN pipeline anomalies.
  6. Trace pipeline status — if Trace Pipeline (per #13634) is enabled, surface its stage/throughput.

Tasks

  1. Research — enumerate the BanyanDB HTTP endpoints and metrics that can power each Monitor section; identify gaps that require new backend API.
  2. Design doc — proposed layout under canopy/docs/monitor-design.md; data-fetching strategy (BFF proxy + caching vs. direct from SPA); refresh interval; empty/error/loading states.
  3. PoC — implement the page shell with Cluster overview + Storage metrics end-to-end (server proxy + web page) using existing BanyanDB endpoints; stub the other sections behind a feature flag.
  4. Tests — Vitest tests for new BFF proxy routes; component tests for the page; e2e smoke under canopy/e2e/.
  5. Docs — update canopy/README.md (sidebar change) and add canopy/docs/monitor-design.md.

Acceptance Criteria

  • New /monitor route accessible from the sidebar.
  • Cluster overview + storage metrics render real data from a running BanyanDB.
  • Loading / empty / error states handled.
  • Bounded refresh interval (default 10s, configurable).
  • Role enforcement: admin only by default (configurable to allow readonly).
  • Unit + e2e tests pass.
  • Docs updated.

Out of Scope

  • Custom alerting rules / notification channels.
  • Long-term metrics storage (rely on Prometheus).
  • Replacing the existing SkyWalking OAP observability dashboards — this page is a lightweight in-product view, not a Grafana replacement.
Ngôn ngữ chính
Java
Star
25k
Fork
6.6k
Merge trung bình
14 giờ 48 phút
Pull request đã merge (30 ngày)
31

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/skywalking

Tất cả issue của apache/skywalking

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.