Rethink download metrics processing?
Maintainer thường phản hồi trong vòng 3 ngày
Chưa có ai nhận issue này.
Đá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
- 15/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- ansible, gcp, nginx
- Lĩnh vực
- analytics, infrastructure
Hướng nghiên cứu
Start with the existing pipeline in ansible/roles/metrics, which ships nginx-derived logs to GCS, Pub/Sub and Cloud Run, then read how the daily summaries are built. This is a design question about whether to move processing to Cloudflare (R2, Workers) and whether to add user-agent classification and os/arch breakdowns, so there is no code change to make yet. Done means maintainers agree on a direction and the open questions in the issue are answered; it is not a good first pick until that decision exists.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
The Node.js download metrics were originally built from the nginx access logs on the www server. When we moved behind Cloudflare, we started to push them into Google Cloud (GCS, Pub/Sub and Cloud Run). That code lives in ansible/roles/metrics.
Downloads are now served from Cloudflare (R2 and a Worker), but the metrics still go through Google. Shipping the logs to GCS, filtering and scrubbing them into CSV, then re-reading all of it each day to build the summaries feels excessive. My question is can we consolidate some of this processing/effort? (I believe @ryanaslett may have also suggested this at some point?)
If we were to revisit this, it might also be worthwhile to gather some additional data while we're at it:
- User-agent: this could help us separate automated downloads (CI, wget, etc.) from people downloading directly. The suggestion would be to publish a high-level classification, not raw strings.
- os/arch breakdowns: I believe today they're counted separately, so we cannot compare across OS/arch combinations.
Of course, we need to continue to scrub any sensitive data, and ideally we'd keep any historic summaries working/compatible.
Happy to help out where I can - I do have some historic context of the current Google implementation.
Questions
- Is it possible to do this in Cloudflare (Worker, R2, something else)? Should we explore this?
- Is it simpler to add any additional values to the current processing job first, and move things later?
- Ngôn ngữ chính
- Jinja
- Star
- 542
- Fork
- 184
- Merge trung bình
- 4 ngày 19 giờ
- Pull request đã merge (30 ngày)
- 10
Chuẩn bị môi trường
- Không có Dockerfile hay 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 nodejs/build
-
build-agenda
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
nodejs/build#4514 · 9 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
nodejs/build#4324 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
availability request build-agenda
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 5/100
Maintainer thường phản hồi trong vòng 3 ngày
-
incident
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 15/100
nodejs/build#4516 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 52/100
nodejs/build#4513 · 1 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 3 ngày
Issue tương tự
-
P4: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
jeffknupp/association#523 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
umami-software/umami#4637 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
evcc-io/evcc#34969 · 1 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
ReferenceArea is drawn from the left edge of the chart when an edge is outside the Brush rangeCó thể đã có người làm @maxymlyskov đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 87/100
Maintainer thường phản hồi trong vòng 1 ngày