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.15.2 | 2025-12-22 | datadog_trace-1.15.2.tgz |
| 1.15.1 | 2025-12-19 | datadog_trace-1.15.1.tgz |
| 1.15.0 | 2025-12-16 | datadog_trace-1.15.0.tgz |
| 1.14.1 | 2025-11-26 | datadog_trace-1.14.1.tgz |
| 1.14.0 | 2025-11-13 | datadog_trace-1.14.0.tgz |
| Version | Message |
| 1.15.2 |
## Profiler ### Fixed - Revert unsafe optimization (#3541) |
| 1.15.1 |
## Tracer ### Fixed - Fix panic after bailout in previous request #3537 |
| 1.15.0 |
## All products ### Internal - bump tracing-core from 0.1.33 to 0.1.35 #3516 ## Tracer ### Internal - Const-ify some logging thread-local variables #3513 ### Fixed - Avoid curl's `getenv` calls #3528 - `code_origin_for_spans_enabled` naming inconsistency #3494 - Add `NULL` guard clause in sidecar reconnect callback #3499 ## Profiler ### Added - Detect parallel threads #3515 ### Changed - Speedup hot path in allocator #3505 ### Fixed - Fixed asserting length of INI #3508 ## AppSec ### Added - Minify blocking json message #3502 - Add Custom Data Classification #3524 - Add metrics for extension connections #3527 ### Fixed - Amend string on request abort #3506 - Fix accessing to incorrectly hardcoded `$_GET` #3501 - Amend issue where `security_response_id` is being release before displaying it #3493 - AppSec helper: add send timeouts #3518 - Minor fixes and improvements to file descriptor reclamation #3526 - LaravelIntegration: be more defensive #3503 - Fix `duration_ext` metric #3507 - Fix segfault iterating mapping #3517 - Fix double end hook run/segfault when blocking in PHP 7.x #3490 - Fix `_iovec_writer_flush` and enforce limits on `$_POST` #3495 - Clear `client_ip` on `request_init` #3496 |
| 1.14.1 |
## Profiling ### Fix - Upgrade to libdatadog v24.0.2 #3492 #3498 |
| 1.14.0 |
## All products - Add PHP 8.5 support #3400 ## Tracer ### Added - Implement APM endpoint resource renaming #3415 - Enable dynamic configuration for debugger-related products #3476 ### Fixed - Collect incompletely fetched CurlMulti handles upon destruction #3469 - Safeguard proc_get_span in case proc_assoc_span is not happening #3471 - Skip SSI injector in installer for accurate ini-dir readings #3472 - Make stub file compatible with php 8.4+ parser #3475 - Fix function resolver on PHP 8.0 and PHP 8.1 for targets without HAVE_GCC_GLOBAL_REGS and with active JIT #3482 - Support ENOENT as shm_open failure mode DataDog/libdatadog#1315 - This fixes a failure mode present on some serverless runtimes. ### Internal - Add crashtracker support for the sidecar #3453 - Strip error messages from hook telemetry #3449 - Collect runtime crash frames #3479 - Use a dedicated endpoint for enriched logs DataDog/libdatadog#1338 ## Profiling ### Internal - Cleanup I/O profiling code #3406 - Upgrade to libdatadog v23, profiling uses zstd now #3470 - Switch panics to abort #3474 ## Application Security Management ### Added - Print block_id #3444 ### Changed - Upgrade libddwaf and rules #3438 - Adapt security_response_id to latest #3480 |