Skip to content

Releases: DataDog/dd-trace-php

1.7.2

07 Mar 10:55
2ad503b
Compare
Choose a tag to compare

Tracer

Fixed

Profiling

Fixed

  • I/O upscaling and allocation to the right sample type #3118
  • fix DD_TAGS support #3121

1.7.1

26 Feb 21:44
9a33457
Compare
Choose a tag to compare

Tracer

Fixed

Profiling

Fixed

  • fork() call handling before rinit #3104

Application Security Management

Fixed

  • Fix unhandled dd_network; fix log message; fix handling of helper errors #3107

1.7.0

21 Feb 17:48
9011004
Compare
Choose a tag to compare

Note

This release adds experimental I/O profiling to the profiler. This is off by default. Enable it with the environment variable DD_PROFILING_EXPERIMENTAL_IO_ENABLED=1 or INI setting datadog.profiling.experimental_io_enabled=1.

Tracer

Added

  • OTel Integration tracking #3084
  • Send integration error logs through telemetry #3006

Fixed

  • Fix fork handling of sidecar #3077
  • Work around preloaded enums being broken on early PHP 8.4 versions with observers #3093
  • Missing Predis Service Override #3098
  • Lazily init cadence client DataDog/libdatadog#890
    • This will work around unnecessarily many sidecar threads being created.
  • Fix possible race confition when adding, then removing remote config services DataDog/libdatadog#882
    • This aims to solve watchdog timeouts of the sidecar (a cause of broken pipes).
  • Handle a zero-sized file for mmap()ing DataDog/libdatadog#838

Internal

  • Generate Markdown Table of Supported Versions #3062
  • Ensuring latest version of composer package are tested #3041
  • Fix UserAvailableConstantsTest::testAllTypesAreTested #3042

Profiling

Added

  • I/O profiling preview #3083
  • support new ZendMM api #2969

Changed

  • switch to pthread_atfork() for fork barrier handling #3058

Application Security Management

Added

Changed

  • Update user login and signup events collection #2976

Fixed

  • Fix build of appsec helper with llvm's linker #3069
  • Amend login failure event being reported #3092

1.6.4

14 Feb 17:35
4a2cc90
Compare
Choose a tag to compare

Tracer

Fixed

  • Add track_error: false on ignored caught exceptions #3074
  • Log fd opening on windows #3076
  • Validate DD_TRACE_AGENT_URL #3050

Profiler

Fixed

  • Combine thread timeout errors properly #3081
  • Avoid dlclose if threads did not join #3075
  • guard VERSION against CRLF characters #3049

Chore

  • Apply cargo fmt and fix feature builds #3064

Internal

  • Update dependencies #3052
  • Bump libdatadog to v15 #3048

AppSec

Internal

  • Trim CRLF chars on version file on Remote Config #3051

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