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.5.1 | 2024-11-19 | datadog_trace-1.5.1.tgz |
1.5.0 | 2024-11-18 | datadog_trace-1.5.0.tgz |
1.4.2 | 2024-10-18 | datadog_trace-1.4.2.tgz |
1.4.1 | 2024-10-14 | datadog_trace-1.4.1.tgz |
1.4.0 | 2024-10-08 | datadog_trace-1.4.0.tgz |
Version | Message |
1.5.1 |
## Tracer ### Added - Add mysqli_real_query to MysqliIntegration #2965 ## Application Security Management ### Fixed - Bridge more musl/glibc diffs in aarch64 Datadog/nginx-datadog#140 |
1.5.0 |
## Tracer ### Added - PHP 8.4 support #2758 - Support Tag Keys for DD_TRACE_HEADER_TAGS #2922 - Add stubs for the Public PHP API #2933 - These are available as datadog_tracer.stubs.php release asset - Collect agent info and apply the env for remote config #2930 ### Changed - Increase read timeout of sidecar for synchronous flushes #2910 - Implement Universal Service Tracking Consistency #2896 - Updating Default Rate Limit Value and Usage Based on Sample Rate #2912 ### Fixed - Fix a possible crash in zai config #2906 - Fix crash when yielding from generators are destroyed #2908 - Fix bad hasThis() check on PHP 7.0 #2911 - Fix RootSpanData writer interception on consecutive calls #2919 - Fix DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP Empty Value Behavior #2909 - Handle hooks on trampoline fake closures #2925 - Fix crash with locals collection in generator close sequence #2932 - Avoid the hook frame in mysqli connection error tracking #2937 - Support multiple PHP_INI_SCAN_DIR's #2941 - Fix use-after-free in exception replay #2947 - Fully disable the sidecar on lambda by setting all related configs to false #2948 - Fix Symfony Messenger propagation to non-instrumented clients #2956 - Fix JIT crash: There may or may not be a readable ZEND_TRACE_OP_INFO() #2942 - Block remote config signals during ftp functions #2957 - Deduplicate Debugger diagnostics in sidecar Datadog/libdatadog#736 - Handle case where the applictaion is stopped without other telemetry sent Datadog/libdatadog#743 ### Internal - Create many tiny artifacts for faster download #2951 - Using datadog-setup.php will now download less than 50 MB for a single PHP version - Add names to memfds Datadog/libdatadog#714 - Allow attaching to the sidecar via gdb Datadog/libdatadog#687 ### SSI Loader changes - Fix compatilibity with PHP 5 #2939 - Fix crash when the loader is loaded multiple times #2954 ## Profiling ### Added - Add fatals and thread start/end events to timeline #2820 - Add thread names #2934 - Add timeline active check for fatals #2945 - Add stream_select()-type functions to timeline #2943 - Visualise opcache restarts in the timeline #2946 ## Application Security Management ### Changed - Disable helper when appsec is fully disabled #2935 ### Fixed - Fix heap corruption after apache reloads (appsec) #2928 ### Internal changes - Update spdlog so it works with recent musls #2921 - Bump libddwaf to 1.20.1 #2913 |
1.4.2 |
## Tracer ### Changed - Disable sidecar sending on lambda #2904 ### Fixed - Fix exception property offset computation for PHP 8.1+ #2901 - Prevent Laravel Queue hooks from stacking up #2899 - Fix crash with missing name in span in debug mode #2893 - Restrict remote config path to a definite 31 chars DataDog/libdatadog#676 ## Application Security Management ### Changed - Update event obfuscation regex #2897 ### Fixed - Fix abort() call on appsec helper unload #2900 |
1.4.1 |
## Tracer ### Fixed - Fix: MongoDBIntegration condition typo #2884 - Fix crash in profiler when span stack switch causes GC run #2885 - Support build with disabled zend signals #2886 - Send git tags via remote config #2890 - Fix memory leak with sidecar trace sender #2875 ## Profiling ### Fixed - Fix profiler ZTS build on alpine #2887 ## Application Security Management ### Fixed - AppSec: improve behavior with empty DD_SERVICE/DD_ENV #2888 |
1.4.0 |
## Tracer The default value for datadog.trace.cli_enabled is now set to true (except for composer), meaning that CLI processes will be traced by default. ### Added - Dynamic configuration #2796 - Dynamic instrumentation #2796 - Can be enabled with datadog.dynamic_instrumentation.enabled=1. - Exception replay #2796 - Can be enabled with datadog.exception_replay_enabled=1. - Track peak memory usage in root span metrics #2840 ### Changed - Enable sidecar trace sender on PHP 8.3 #2729 - Optimize sending traces via sidecar Datadog/libdatadog#598 - Add new ini config datadog.crashtracking_enabled #2850 - Add ionCube to the list of incompatible extensions + add INI setting to ignore incompatible extensions #2858 - Enable CLI by default #2871 ### Fixed - Crashtracker: fix a use-after-free error #2843 - Fix curl integration race condition #2847 - Fix memory leak with sidecar trace sender #2875 - OpenTelemetry: Missing addLink method and Fiber handling #2849 - Mongodb: Deprecated exception in v1.20+ #2870 - Fix leaking sidecar sessions Datadog/libdatadog#642 - Implement deadlock watchdog for sidecar Datadog/libdatadog#647 ### Internal - Fix testsuite flakiness #2841, #2846, #2848, #2867 - Fix telemetry metric name Datadog/libdatadog#666 ### SSI Loader changes - Add SSI requirements.json file #2813 - Disable the tracer in case of a potential incompatibility (extension/jit) #2853 ## Profiling ### Internal - bump to Rust 1.76 #2876 ## Application Security Management ### Changed - Move helper to sidecar remote config #2864 ### Fixed - Fix improper symbol exports in appsec ext/helper #2854 - Remove gid from socket/lock path of helper #2855 - appsec ext: retry on connection refused #2860 - Fix orderly helper appsec shutdown #2859 ### Internal changes - Add appsec benchmarks #2791 |