Download the PHP package open-telemetry/opentelemetry-auto-phalcon without Composer
On this page you can find all versions of the php package open-telemetry/opentelemetry-auto-phalcon. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download open-telemetry/opentelemetry-auto-phalcon
More information about open-telemetry/opentelemetry-auto-phalcon
Files in open-telemetry/opentelemetry-auto-phalcon
Package opentelemetry-auto-phalcon
Short Description OpenTelemetry auto-instrumentation for the Phalcon PHP framework
License Apache-2.0
Homepage https://opentelemetry.io/docs/languages/php/
Informations about the package opentelemetry-auto-phalcon
This is a read-only subtree split of https://github.com/open-telemetry/opentelemetry-php-contrib.
OpenTelemetry Phalcon auto-instrumentation
This is an OpenTelemetry auto-instrumentation package for applications built on the Phalcon PHP framework.
Please read https://opentelemetry.io/docs/instrumentation/php/automatic/ for instructions on how to install and configure the extension and SDK.
Requirements
- PHP >= 8.2 —
hook()observes internal/extension functions (what every method on compiled Phalcon classes is) via Zend Observer API support added in PHP 8.2; on 8.1 hooks register but never fire. - OpenTelemetry extension
- OpenTelemetry SDK and exporters (required to actually export traces)
- Phalcon 5.x (
ext-phalcon)
Overview
A request can reach Phalcon through several different entry points, and no single one of them covers every app — auto-instrumentation hooks all of them so exactly one root span is created regardless of which style the application uses:
Phalcon\Mvc\Application::handle()— full MVC apps.Phalcon\Mvc\Micro::handle()— Micro apps, which route straight to a handler callable and never touch a dispatcher.Phalcon\Cli\Console::handle()— CLI tasks (INTERNALspan, no HTTP attributes).Phalcon\Dispatcher\AbstractDispatcher::dispatch()— fallback root, only when none of the above already started one (e.g. an app building and dispatching aMvc\Dispatcherdirectly, without a surroundingApplication).
The root span is named after the matched route when the application uses named routes, its raw
pattern when it has one and isn't a raw-regex default route, and falls back to
{controller}/{action} ({task}/{action} for CLI) otherwise.
AbstractDispatcher::callActionMethod() produces one child span (INTERNAL kind) per controller
action actually invoked, including one for a forward()-ed action (Phalcon's forward() doesn't
re-enter dispatch(); it makes dispatch()'s own internal loop run callActionMethod() again
for the new action) and for an app manually re-dispatching to resolve a nested resource.
Installation via composer
Installing dependencies and executing tests
From the repository root, using the Makefile (runs inside this repo's Docker image, so you don't need PHP or Phalcon installed locally):
make all runs style, static analysis, and tests together. See make help for the full list of
targets.
Configuration
The extension can be disabled via runtime configuration:
All versions of opentelemetry-auto-phalcon with dependencies
composer-runtime-api Version ^2.0
ext-phalcon Version ^5.0
ext-opentelemetry Version *
open-telemetry/api Version ^1.6
open-telemetry/sem-conv Version ^1.38