Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[Feature] Add Monitor page to Canopy

Abierto
#13,992 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@pallavithegod ya está trabajando en esto.

Desde el 15/10/2026.

  • #1414 de @pallavithegod — abierto

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Activo
Stack tecnológico
prometheus

Línea de trabajo

Empieza revisando docs/operation/observability/metrics.md y enumerando los endpoints HTTP y las métricas de BanyanDB para las secciones propuestas. Documenta el diseño y el enfoque para obtener los datos en canopy/docs/monitor-design.md; después, inspecciona la barra lateral existente de Canopy y las ubicaciones de las pruebas bajo canopy/e2e/. La tarea estará terminada cuando haya un plan acotado de diseño e implementación que cubra la ruta /monitor, los estados de carga y error, el comportamiento de actualización, la aplicación de roles y las pruebas.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.
Lenguaje dominante
Java
Estrellas
25k
Forks
6.6k
Merge medio
12 h 28 min
PR fusionados (30 d)
31

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/skywalking

Todos los issues de apache/skywalking

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.