[opentelemetry-php-contrib] Add more signals to the CakePHP auto-instrumentation
Is your feature request related to a problem? The first implementation for CakePHP auto-instrumentation only creates traces for controller calls. See also #1234
Describe the solution you'd like Include more signals out of the box. Specifically:
- Http Server Metrics
- Http Client Metrics for the build in Http Client
- Traces for Console Commands
- Traces for Middlewares (can also be achieved by installing the auto-instrumentation package for PSR-15)
- Traces for Database Queries (can also be achieved by installing the auto-instrumentation package for PDO)
- Traces for the build in Http Client (can also be achieved by installing the auto-instrumentation package for PSR-18)
- Application logs (can also be achieved by installing the auto-instrumentation package for PSR-3)
Describe alternatives you've considered As mentioned in the list above, some parts of the instrumentation can be achieved by using already existing auto-instrumentation packages. I could not find a guideline if in this case, the framework specific auto-instrumentation should omit these signals in favor of the more general auto-instrumentation packages or if they could also be part of the framework package.
I would be happy to help with the implementation of this as well
@eriksamstag - glad to hear you're happy to help with the implementation of this. Are you able to get rolling on this yourself, or will you need some assistance?
@bobstrecansky I think I can get going on my own. The biggest question left for me at the moment is, if the CakePHP auto-instrumentation should contain signals that are already part of other packages (e.g. PSR-15). And if so, if the code should be copied over from these packages, or if there would be a way to use these packages as dependencies of the CakePHP package.
@eriksamstag I'd suggest that we should favour the general PSR-based packages, unless it can be done better (ie, provide more meaningful span name, or extra metadata) with a specialized cake version. You could also add some of the PSR ones to the suggest section of composer.json if you have tested them against cake and think they work.