Skip to content

Releases: DataDog/dd-trace-php

1.6.3

17 Jan 14:54
a2098a7
Compare
Choose a tag to compare

Tracer

Fixed

  • Block signals for sqlsrv_connect function #3035
  • Fall back to stderr if the log path contains colons #3044

Profiler

Fixed

  • PHP 8.4 crash with opcache optimizer #3038
  • Crash during preloading with neighboring ZendMM extension #3037

1.6.2

11 Jan 00:58
46258ca
Compare
Choose a tag to compare

Tracer

Fixed

  • Restore MESSAGE_* types #3031
  • Fix stats computation of background sender

1.6.1

09 Jan 15:27
1d863f3
Compare
Choose a tag to compare

Warning

This version may cause metrics to not be computed and services to be hidden in the Datadog Interface. Please upgrade to 1.6.2.

Tracer

Fixed

  • SpanLink::fromHeaders() crash with no or invalid propagated tags #3025

1.6.0

09 Jan 10:44
f95ddcc
Compare
Choose a tag to compare

Warning

This version can crash when calling SpanLink::fromHeaders() in the tracer with no or invalid propagated tags and may cause metrics to not be computed and services to be hidden in the Datadog Interface. Please upgrade to v1.6.2 or newer. You can read about the technical details in #3025

Tracer

Added

Changed

  • Leave a hint at what to do if the temp dir is not writable in installer #3015

Fixed

  • JIT enabled detection in SSI loader #2971
  • Block signals for more functions #2999
  • Use-after-free with live-debugger #2989
  • root span name in Slim V4 #3020
  • PHP 8.4 deprecations #2981 (thanks @JeppeKnockaert)
  • Avoid repeated processing of internal functions #3022

Internal

  • library_entrypoint.start metric #3009
  • Bump rust to 1.78 #3005
  • Exit if execv failed #2983
  • Compatibility with newest arginfo gen_stub from PHP 8.4 #2973

Application Security Management

Added

  • Support for endpoint, header, network and session fingerprints #2955
  • WAF telemetry #2735
  • Implement LFI #2770
  • ASM Standalone #2903, #3001

Changed

  • Upgrade libddwaf to v1.22.0 #3007

Fixed

  • Restart usleep() on EINTR #3002
  • recv/writev calls in the face of interrupting signals #3008
  • Blocking from a hook is not stopping code execution #2836

Profiling

Fixed

1.5.1

19 Nov 20:56
ab52de5
Compare
Choose a tag to compare

Warning

This version can crash on PHP 8.4 with profiling enabled, when using a web server (CLI is unaffected). Please upgrade to v1.6.0 or newer. You can read about the technical details in #3019

Tracer

Added

  • Add mysqli_real_query to MysqliIntegration #2965

Application Security Management

Fixed

1.5.0

18 Nov 16:53
93849dd
Compare
Choose a tag to compare

Warning

There is a known issue with the Application Security Management module on aarch64 architectures in this release. If you use datadog.appsec.enabled=0, this won't affect you. Otherwise it might happen that the datadog-ipc-helper process crashes immediately.

Warning

This version can crash on PHP 8.4 with profiling enabled, when using a web server (CLI is unaffected). Please upgrade to v1.6.0 or newer. You can read about the technical details in #3019

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

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

21 Oct 10:52
a618ff5
Compare
Choose a tag to compare

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

14 Oct 13:22
72c5212
Compare
Choose a tag to compare

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

  • Improve behavior with empty DD_SERVICE/DD_ENV #2888

1.4.0

08 Oct 17:33
dcc880f
Compare
Choose a tag to compare

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

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

1.3.2

26 Sep 13:51
a5e07d7
Compare
Choose a tag to compare

Tracer

Fixed

  • Fix crash with git metadata injection #2862