feat: add project filter to free monitoring dashboard - #5003
feat: add project filter to free monitoring dashboard#5003sagarchhetribird wants to merge 2 commits into
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
| return ( | ||
| name === appName || | ||
| name.startsWith(`${appName}.`) || | ||
| name.startsWith(`${appName}_`) || | ||
| name.startsWith(`${appName}-`) || | ||
| name.includes(`/${appName}`) || | ||
| name.includes(`_${appName}_`) || | ||
| name.includes(`.${appName}.`) | ||
| ); |
There was a problem hiding this comment.
Ambiguous container ownership matching
When service app names have a delimiter-separated prefix relationship such as myapp and myapp-api, the broad prefix checks assign the longer-named service's container to the first matching shorter name, causing incorrect project totals and potentially exposing another project's live resource metrics. How this was verified: The matcher accepts prefix-related names, selects the first match, and processes daemon-wide container statistics.
Knowledge Base Used: Monitoring and Live Terminal/Log Streaming
| ): Promise<ProjectResourceStats> => { | ||
| const project = await findProjectById(projectId); | ||
| const services = collectProjectServices(project, options?.accessedServices); | ||
| const containers = (await getAllContainerStats()) as Container[]; |
There was a problem hiding this comment.
Remote service statistics omitted
When a project has services deployed to remote servers, calling getAllContainerStats() without their serverId queries only the local Docker daemon, causing those services to show zero containers and zero resource usage and producing incomplete project totals.
Knowledge Base Used: Monitoring and Live Terminal/Log Streaming
805085d to
784d6e9
Compare
Allow filtering server monitoring by project to show aggregated CPU/memory/I/O usage and a per-service breakdown for that project's running containers.
784d6e9 to
d5ba58f
Compare
Prefer exact/longest delimiter-bounded appName matches and collect docker stats from each service's server so remote deployments are included and prefix collisions cannot misattribute usage.
|
Addressed the Greptile findings:
|
|
Want your agent to iterate on Greptile's feedback? Try greploops. |
Summary
project.resourceStatstRPC endpoint (monitoring:read) with org/member access checksTest plan
/dashboard/monitoringand confirm All Server view still shows host CPU/memory/disk chartsproject.resourceStatsis rejectedGreptile Summary
The PR adds project-scoped monitoring to the free dashboard, including aggregated live metrics and a per-service breakdown.
project.resourceStatsendpoint.Confidence Score: 5/5
The PR appears safe to merge.
No blocking failure remains.
Reviews (3): Last reviewed commit: "fix: tighten project monitoring containe..." | Re-trigger Greptile
Context used: