[NFR]: Collector source adapters for ADR data sources (DB / View / Route)
Open
@niden is already working on this.
Since Jul 22, 2026.
enhancement
- Dominant language
- PHP
- Stars
- 5
- Forks
- 3
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 3
Description
Summary
Even once collectors are decoupled from event names, three collectors have no data source under ADR, because the ADR stack uses different technologies than MVC. Provide one source adapter per collector, selectable per application, so DB, View, and Route data can be collected in an ADR app (phalcon/vokuro-adr as the reference).
Missing data sources under ADR
- Database - ADR uses
Phalcon\DataMapper\Pdo\Connection, which does not firedb:beforeQuery/db:afterQuery. Needs a DataMapper source (a profiler or a decorating connection) alongside the MVCDb\Adapter(events) source - two adapters feeding onequerysignal. - View - ADR renders
.phtmlthroughPhalcon\Mvc\View\Simplewith no events manager attached, soview:*never fires. Needs a source that instruments the ADR renderer/responder, or attaches an events manager toSimple. - Route - ADR uses
Phalcon\ADR\Router, not the MVC router, sorouter:matchedRoutenever fires. Needs an ADR route source.
Proposed direction
- Define a per-collector source contract, and provide two implementations where relevant (MVC and ADR/DataMapper). The active bridge selects the appropriate source.
- Ship the DataMapper DB source as the first concrete second-adapter - the most valuable, and the clearest example of "two adapters, one collector".
Acceptance
- In an ADR app, the Database, View, and Route collectors show real data.
- The MVC sources are unchanged.
Depends on
- #15
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.