Report each day's production telemetry error groups as GitHub issues
维护者通常 3 天内回复
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 20/100
- Issue 类型
- 功能
- 描述清晰度
- 描述清楚
- 活跃度
- 停滞
- 技术栈
- github-actions, google-cloud, python
调研方向
Start with the linked pull request #3990 and review its workflow and related implementation. The issue specifies the daily Cloud Logging query, grouping and thresholds, issue updates and regressions, and privacy limits; compare the implementation against those requirements and verify the workflow with its dry run or available checks. Done means qualifying production error groups create or update issues while staging data and sensitive log content are handled as described.
由索引模型根据 Issue 内容生成。
描述
Problem
The Public API and the simulation API write structured telemetry to the central Cloud Logging bucket policyengine-observability, but nothing reviews their errors systematically. The six alert policies have no notification channels. A dry run of this change against 2026-10-19 found 15 error groups in production and staging. The largest, one exception on /<country_id>/report, failed about 14% of that route's requests that day, and nobody was told.
Change
A scheduled GitHub Actions workflow reports each US Eastern calendar day's errors as GitHub issues in this repository:
- At 00:45 US Eastern it reads the previous day's ERROR records, plus the seven days before for comparison, from the bucket's linked BigQuery dataset.
- It chooses one record per failed request and service, groups failures by a keyed fingerprint, and measures each group in production and staging: occurrences, affected requests, error rate on the affected routes, hourly rates, and first and last seen.
- It opens one issue per production group with at least 3 occurrences in at least 2 requests, at most 5 per run, and updates existing issues. An issue closed as completed reopens with a
regressionlabel when failures return. Staging counts appear in the issues but never open one.
This repository is public, so issues, logs and job summaries may contain only fingerprints, counts, code-defined names (service, exception class, route template) and a Logs Explorer link, never error messages, stack text or identifiers.
Out of scope
- Cloud Run platform failures (timeouts, out-of-memory kills, crashes before the application logs) are not forwarded to the bucket, so they are not reported. This is documented as a known gap.
- Opening pull requests automatically from these issues is a later change.
Merge timing
Merge on or after 2026-10-23, once #3984 has run in production for a full Eastern day. Before that, unhandled 500s from before #3984 have no exception record, and would open issues for groups that stop matching once it is deployed.
- 主要语言
- Python
- 星标
- 18
- 派生
- 33
- 平均合并
- 2 天 18 小时
- 30 天内合并 PR
- 36
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
PolicyEngine/policyengine-api 的其他 Issue
-
难度 1/5 1-3 小时 新手友好度 88/100
PolicyEngine/policyengine-api#3911 ·
维护者通常 3 天内回复
-
难度 1/5 1 小时以内 新手友好度 82/100
PolicyEngine/policyengine-api#3910 ·
维护者通常 3 天内回复
-
Stop serving economy results cached with ×100 decile relative changes可能已有人在做 @anth-volk 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 45/100
PolicyEngine/policyengine-api#4025 ·
维护者通常 3 天内回复
-
Store the metadata v3 reads in the v2 catalog, from PolicyEngine.py's public records可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 4/5 3-5 天 新手友好度 48/100
PolicyEngine/policyengine-api#4022 ·
维护者通常 3 天内回复
-
Request UK constituency and local-authority impacts separately from the national economy result可能已有人在做 @anth-volk 今天认领。 未关闭
难度 4/5 3-5 天 新手友好度 25/100
PolicyEngine/policyengine-api#4021 ·
维护者通常 3 天内回复
查看 PolicyEngine/policyengine-api 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 1 天内回复
-
namespace operations
难度 1/5 1 小时以内 新手友好度 72/100
EclipseFdn/open-vsx.org#14623 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
developmentseed/titiler-cmr#261 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
andrewyng/openworker#774 ·
维护者通常 1 天内回复
-
aggfunc未关闭
难度 2/5 1-3 小时 新手友好度 68/100
worldbank/blackmarblepy#160 ·