Visible time on a dashboard route
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 52/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- javascript, python, redis
- Lĩnh vực
- backend, frontend, observability
Hướng nghiên cứu
Start by locating the dashboard route handling, generated route list, beacon handler, Redis visit storage, histogram definitions, and UTC-day cron job. Run the existing dashboard metrics tests, then add the listed visible-time, route-change, pagehide, hidden-tab, expiry, and metric-isolation cases. Done means each visit contributes at most one sample with the required route label and bounds.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
Visible time is how long a route stayed in the foreground. The dashboard is a single-page app, so leaving a screen is a route change, and a tab in the background is still open. A visit that never sends its ending is infinite.
Proposal
Record visible time in the dashboard UI. Start a timer when a route opens. Pause it while document.visibilityState is hidden.
Send two beacons with navigator.sendBeacon. Each one carries a visit id and the route id. The route id keeps its parameters (/tree/$treeName/$branch, /hardware/$hardwareId). The handler accepts only route ids from the generated route list. The visit id is the Redis key. The histogram label is route.
- The open beacon stores the visit in Redis.
- The beacon on route change or
pagehideobservesdashboard_route_visible_secondswith the elapsed visible seconds, clamped at 86400, and deletes the key.
Buckets are 5, 15, 30, 60, 120, 300, 600, 1800, 86400, and +Inf. The board shows p50 and p95 per route. A finished visit stays at or under 86400, so the +Inf bucket is the visit that never ended.
At the end of the UTC day, a cron observes +Inf for every visit key still open and deletes it. The histogram is written once per visit. The handler records dashboard_route_visible_seconds only, and these beacons stay off dashboard_backend_requests_by_client_total, the latency histogram, and the unique-visitor count.
Tests
- A visible stay of 20s on
/tree/$treeName/$branch, then a route change, observes 20 ondashboard_route_visible_secondsfor that route, and the Redis key is gone. - 30s with the tab hidden is not part of that sample.
- A route left open through the end of the UTC day observes +Inf for that route.
- A beacon for that visit after the cron does not add a second sample.
- The beacon request does not increment
dashboard_backend_requests_by_client_total.
- Ngôn ngữ chính
- Python
- Star
- 10
- Fork
- 32
- Merge trung bình
- 3 ngày 7 giờ
- Pull request đã merge (30 ngày)
- 27
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của kernelci/dashboard
-
notifications
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Backend
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 15/100
Maintainer thường phản hồi trong vòng 2 ngày
-
[Labs] Add a lab details API and lab filters on existing read endpointsCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởBackend q4-plan
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 24/100
kernelci/dashboard#2169 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
[Labs] Design the lab details pageCó thể đã có người làm @alanpeixinho đã nhận 10 ngày trước. Đang mởFrontend q4-plan
Độ khó 5/5 3-5 ngày Mức phù hợp với người mới 30/100
kernelci/dashboard#2168 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của kernelci/dashboard
Issue tương tự
-
Project submission:Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
slavakurilyak/awesome-ai-agents#845 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
tests: pin that the atomic writers in utils/paths.py stage the temporary file in the target's directoryCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởdifficulty:2 enhancement good first issue
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 92/100
MakazhanAlpamys/Soup#2178 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[BUG] dcg.waggr permutation p-values are folded twice, so near-zero scores get the smallest p-valuesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
scverse/rapids-singlecell#854 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Slang input: int8_t4_packed and uint8_t4_packed are copied into CrossGLCó thể đã có người làm @ninglinLiu đã nhận hôm nay. Đang mởarea:frontend backend:slang bug direction:input
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
Maintainer thường phản hồi trong vòng 1 ngày
-
random_elements(unique=True) on an OrderedDict: ZeroDivisionError once only zero weights remain, AssertionError with use_weighting=FalseCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 13 ngày