Replies: 2 comments 6 replies
-
|
@Yicong-Huang @chenlica @zuozhiw, any opinions on this path forward for raising the PRs for the observability task? |
Beta Was this translation helpful? Give feedback.
-
|
Hi @Ma77Ball, I don't have time to verify the project details yet, just a comment on opening issues and PRs related to a big topic. It will be good to have an umbrella issue (for example #4070) and on that issue to describe your plan. Then you can open multiple sub issues, each as a todo. The sub issues can be in parallel or in sequential to be completed. For PRs though, if you find yourself stacking PRs (meaning that PR B depends on PR A, and PR C depends on PR B), then I suggest you open them one by one to make review easier:
So my point is, you can open many issues (todos), but for PRs, it's better to open one at a time to get reviewed. If you have something that has no dependency and can be done/reviewed in parallel, sure you can open multiple PRs for those kind of parallel tasks. I see you had more than 8(?) stacked PRs opening right now, and as a potential reviewer I am a bit lost where to start. for you, you need to update the other 7 as the first PR evolves, that's a lot of waste of time. |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
Proposal: land "Modern Observability" (#4070) as a stack of small, self-contained PRs
Opening this to get feedback on the approach and procedure before raising the PRs.
Problem
The observability work for #4070 grew into one large branch (~16k insertions across ~230 files): OTel bootstrap + log/metric/trace/profile pipelines, a tenant-scoped query gateway, an Angular dashboard, docker-compose backends — plus a codebase-wide logging/readability pass that rode along. That is far too big to review or merge safely as one PR.
Approach
Decompose it into 26 small branches in two independent tracks, each:
OTEL_SDK_DISABLED, and the dashboard is health-gated), andTrack A — the feature (18 stacked PRs): foundations (log sanitizer → log bridge → OTel bootstrap → metrics → tracing) → deploy (compose/collector, Parca/eBPF) → query gateway (dtos → core → logs / metrics / traces / profiles each its own PR) → UI (shell → logs / metrics / traces / profiles panels).
Track B — logging & a security fix (8 PRs, independent, off
main): human-readable lifecycle/error logging across engine, web layer, dashboard resources, workflow-core storage, the microservices, common/auth, common/dao; plus a fix to stop logging JWTs/headers/bodies in access-control.Procedure
maindirectly and can merge in any order.sbt <module>/compile(+ specs), frontend viang build.Questions for reviewers
Beta Was this translation helpful? Give feedback.
All reactions