APM and distributed tracing for PHP
The Datadog PHP Tracer brings APM and distributed tracing to PHP.
License: BSD 3-Clause
Version | Release | Download |
1.3.1 | 2024-09-06 | datadog_trace-1.3.1.tgz |
1.3.0 | 2024-08-30 | datadog_trace-1.3.0.tgz |
1.2.0 | 2024-07-22 | datadog_trace-1.2.0.tgz |
1.1.0 | 2024-06-10 | datadog_trace-1.1.0.tgz |
1.0.0beta1 | 2024-04-16 | datadog_trace-1.0.0beta1.tgz |
Version | Message |
1.3.1 |
## Tracer ### Fixed - Fix DD_AUTOLOAD_NO_COMPILE #2833 - Loader: Use the same version number as for other extensions #2838 - Consider ifunc symbols also defined Datadog/libdatadog#609 - Fix crash with double parent key in tracestate #2837 - Fix #2831: Failure with LTO #2839 ### Internal - Avoid using non-bundled rust git dependencies #2827 |
1.3.0 |
## Tracer The default value for datadog.log_backtrace is now set to true, meaning that on compatible systems, a segmentation fault will cause the process's backtrace to be printed in the log. ### Added - Add SpanEvents support for DD and OTEL #2754 - Symfony Messenger Integration #2749 - Add crashtracker #2763 ### Changed - Updates the expected telemetry tags for OTel env-var mapping in line with the latest RFC #2775 ### Fixed - Multiple Workers in SWOOLE_BASE mode #2778 - Fix ini creation when `--extension-dir` is used #2789 - Fix fatal error when reading uninit $meta on a span #2790 - Fix JIT crash with instrumented generators #2797 - Handle absolute paths in extension_dir containing forward slashes #2798 - Fix setup with spaces in path to php binary #2803 - Fix #2774: shared hooks removal caused xdebug end handler to be skipped #2780 - Fix error message for not loaded/not available #2810 - Implement fallback for when memfd is not available on Linux Datadog/libdatadog#591 - Use the Windows User ID as sidecar identifier instead of the Session ID Datadog/libdatadog#558 - Fix error check in trampoline.c Datadog/libdatadog#569 - Do not implicitly fall back to spl_autoload() if no autoloader is registered on PHP 7 #2822 - Prevent crash in shutdown if hook was not stored #2824 ### Internal - Send x-datadog-test-session-token metric and send metrics to request-replayer #2802 - Only warn on missing `json` extension #2805 - Fix compilation after alpine container upgrade #2811 - Telemetry v2 schema for app-started payload requires 'configuration' Datadog/libdatadog#543 ## Profiling ### Added - Add timestamp to exception sample #2793 ### Internal - Perf: remove profiler mutex #2714 ## Application Security Management ### Added - Automated user ID collection modes #2782 - Report backtraces #2715 ### Changed - Support loading appsec helper in sidecar Datadog/libdatadog#565 ### Fixed - Refactor the sampler to fix errors #2761 |
1.2.0 |
This release adds beta support for PHP Single Step Instrumentation, allowing the instrumentation of your PHP applications without the manual installation of the dd-trace-php extension. Read https://docs.datadoghq.com/tracing/trace_collection/automatic_instrumentation/single-step-apm/ for more details. ## Tracer ### Added - Add span field meta_struct #2673 - Add config to disable obfuscation in memcached queries #2725 - Add PDO spans to orphans removal #2743 - Make generators replaceable #2718 - Source Code Integration #2731 - OpenAI Integration #2685 - Add support for Single Step Instrumentation #2684 #2723 ### Fixed - Fix PHP binary detection in package post-install script #2707 - Handle OTel HTTP semantic conventions < 1.21.0 #2717 - Respect the active service/env/version for metric tags #2742 - Fix post bailout hook execution in 8.3 unoptimized builds #2737 - Fix env&version tags leaking in metrics #2745 - Fix global priority sampling #2728 - Fix crash in OpenTelemetry Span::getCurrent() when accessing span link #2767 ### Internal - Compile sidecar and extension separately, to link them together later #2741 - Sync with libdatadog for telemetry flush data intval #2757 ## Profiling ### Internal - Keep string cache data alive longer #2668 - Extract func is_internal() #2736 - Less unsafe code #2739 - Refactor fork handling #2747 ## Application Security Management ### Fixed - Refactor the sampler to fix errors #2761 ### Internal - Upgrade helper to use WAF 1.18.0 #2660 - Add more logs around schema extraction #2755 |
1.1.0 |
## Tracer ### Added - Implement OTel config remapping #2691 - Remap OTel to DD status code #2695 ### Fixed - Apply some fixes with sidecar trace sender #2680, #2686, #2689, #2698, #2700 - Don't treat Symfony 2 differently from other versions #2693 - Ensure DDTRACE_G(active_stack) is always NULL when the root span is being pushed #2701 ### Internal - Switch 2 logs to logev to avoid useless work #2679 - shrink size of Rust artifacts #2696 ## Profiling ### Added - Add `thread id` label on every sample #2692 ### Internal - Reduce memory usage by upgrading libdatadog to v10 #2697 |
1.0.0beta1 |
This beta release contains all breaking changes planned for dd-trace-php 1.0. An upgrade guide can be found at https://github.com/DataDog/dd-trace-php/blob/1.0.0beta1/UPGRADE-1.0.md. ## Tracer ### Added - Add --ini and --extension-dir installation option #2620 - CodeIgniter 3 Compatibility #2515 - Add CakePHP 3+ Support #2618 ### Changed - Cleanup deferred loader and remove some PHP 5 compat code #2527 - Change DD_TRACE_SAMPLING_RULES_FORMAT default from regex to glob #2534 - Raise API errors instead of debug logs when wrong arguments are passed #2542 - Change WordPress Default Behavior #2525 - [OTel] Only set resource info on root spans #2558 - Remove early code execution and use an autoloader instead #2530 - Remove deprecated configuration keys or APIs #2574 - Drop Configuration classes from API #2596 ### Fixed - Elasticsearch: Hook not being removed #2616 - Fix shared compilation on macOS - Fix host Scopes not being removed #2624 - Add note about update_span_duration semantics #2622 ### Internal - Use a global version and change installer tests to use the version #2537 - Clean PHP 5 checks #2584 - Collect 'logs_created' internal metric #2604 - Make the root Makefile macOS compatible #2614 - Add stats reporting for sidecar and telemetry #2621 - Clean Integration configuration #2598 - Re-added spans_created telemetry metric Datadog/libdatadog#391 ## Application Security Management ### Fixed - Disable Appsec when FrankenPHP SAPI is detected #2617 |