Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Safe, aggregate-only production reports (Bugsnag / Scout / Heroku) for maintainers

オープン
#7,264 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 18 日以内に返信

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
rails, ruby

調査の方向性

Start by checking the existing production monitoring scripts and documentation under bin/ and doc/, then review the Bugsnag, Scout APM, and Heroku read-only API options named in the issue. Define an allow-list for each report and use recorded responses containing fake PII to verify sensitive fields never appear. Done means the aggregate reports, absence-of-PII specs, and maintainer setup docs are in place.

索引モデルが issue の本文から書いたものです。

説明

✨ New Feature Difficulty: Intermediate Help Wanted

Problem

Today, production signal reaches contributors only as Discord bot posts (#bot-bugsnag, #bot-scout, #prod-app-performance). Each Bugsnag post links to an event most contributors can't open. The same error repeats for days without anyone seeing the count or trend (e.g. the CSRF errors in #7243). Raw Heroku logs and Bugsnag events can include youth data (see #7263), so we can't just hand out access or paste them into issues or AI tools.

Proposal: aggregate-only, read-only scripts maintainers can run and share

Add bin/prod-report (or three small scripts) that use read-only credentials and print only aggregates that are safe to paste into a GitHub issue:

  • Bugsnag (Data Access API, read-only collaborator token in BUGSNAG_DATA_TOKEN): open error groups from the last N days, with error class, message, controller#action, event count, users affected (count only), and first/last seen. No event metadata, request params, user emails, or URLs.
  • Scout APM (API key with read-only access): top endpoints by time consumed, p95, and allocations, plus memory-bloat endpoints (helps #7218).
  • Heroku (heroku logs / log drain): counts of platform error codes (H12, R14, H10…) and 5xx counts by dyno and hour. Router path= values are reduced to the route pattern (/casa_cases/:id).

Each script should:

  • Fail closed: if a field isn't on its allow-list, it isn't printed
  • Have a spec feeding a recorded API response with fake PII and asserting it's absent from the output
  • Be documented in doc/ with how to get the read-only token (maintainers only)

Stretch

  • Weekly scheduled run posting the summary to a pinned GitHub issue or Discord, replacing per-event Bugsnag pings with trends
  • Then disable Discord embeds for Bugsnag (#5390)
主要言語
Ruby
スター
382
フォーク
547
平均マージ
10日 19時間
マージ済み PR(30日)
20

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

rubyforgood/casa のほかの issue

rubyforgood/casa の issue をすべて見る

似ている issue

Ruby の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。