dd-trace-php

Datadog PHP Clients

OTHER License

Downloads
12.2M
Stars
464
Committers
76

Bot releases are hidden (Show)

dd-trace-php - 0.64.0

Published by labbati about 3 years ago

WARNING: this version presents a known bug and you should update to 0.64.1+

WARNING: With this release the file _generated.php is not used anymore and files _generated_api.php and _generated_internal.php are generated instead. This only impacts users having a very custom installation procedure that requires custom builds and manual copy of files.

Added

  • Bring ZAI config, internal spans, and improved exception handling to PHP 7 #1293

Fixed

  • Disable flaky ext/ftp tests on PHP < 8.1 #1296
  • Compatibility with PHP 7.4+ preloading #1298 (thank you @olsavmic for the investigation and reproduction case)
  • Check for php8 binary in package/post-install.sh script #1301 (thank you for the contribution @daiwai)
  • Support userland spans with custom root spans created internally #1303
  • Fix memory leak of already defined global tags #1304
dd-trace-php - 0.63.0

Published by labbati about 3 years ago

WARNING: this version presents a known bug and you should update to 0.64.1+

Added

  • ZAI config (#1260)
  • Use exceptions ZAI for PHP 7 as well (#1283)

Fixed

  • Fix arginfo of error&exception handler (#1291)
dd-trace-php - 0.62.1

Published by bwoebi about 3 years ago

Fixed

  • Add linux/securebits.h to CentOS docker container, to have it present in linux build artifacts #1286
  • Handle an additional case of capabilities being dropped within our background sender #1287
dd-trace-php - 0.62.0

Published by labbati about 3 years ago

Added

  • ZAI env #1250
  • Add ZAI component for reading headers #1256
  • (PHP 8) Add proper exception and error reporting #1272
  • (PHP 8) Register SpanData->exception property and store exception info there instead of internally #1281

Changed

  • Refactor internal span objects to be allocated together with their internal data #1254
  • Enforce metrics to be floats in internal serializer #1258
  • Allow for global debug mode, add zai testing to Makefile and more minor testing improvements #1265
  • Move DDTrace\Format to src/api #1271
  • Moving spans from userland to extension #1262

Fixed

  • Fix msgpack serialization of empty arrays #1259
  • Set SECBIT_NO_SETUID_FIXUP to prevent crashes after setuid() calls #1276
  • Apply original curl headers when curl_setopt_array() fails #1279
  • Fix owner of files included in the distributed .tar.gz archive #1280
  • Fix tests: Pin Symfony 4 tests to laminas/laminas-code < 4.4 #1266
dd-trace-php - 0.61.0

Published by labbati over 3 years ago

Added

  • Add \DDTrace\get_current_context #1227
  • Create property ZAI seam for PHP 8 #1246
  • Create exceptions ZAI seam for PHP 8 #1248
  • Run mongodb-driver testsuite in CI with and without the tracer #1255

Changed

  • Move mapping-settings to be deserialized as a zend_array * for PHP 8 #1253

Fixed

  • Remove TSRMLS_C from \DDTrace\current_context #1249
dd-trace-php - 0.60.0

Published by labbati over 3 years ago

Breaking change: Users that are not explicitly setting or using json encoding are not impacted but this breaking change. Users either requiring json encoding for special purposes to send traces to their own custom targets or relying on the Stream class (that was not part of the public api in src/api) will have to manually clone the classes from the previous release SHA and register themselves. This is discouraged because as of today, json causes a fallback to blocking sync transmission to the Datadog agent, while using messagepack we support the unblocking async transport to our agent.

Added

  • Zend Abstract Interface: Method call seam (PHP 5) #1186
  • ZAI Sandbox #1213
  • Auto-flushing (PHP 5) #1189
  • Nette integration (v2 and v3) #504 #1220 (thanks @kozaktomas for the original contribution and thanks @Anilm3 for reviving the original PR)
  • Begin documenting architecture #1225
  • Detect ZAI ZMM leaks #1229
  • ZAI function-call seam (PHP 8) #1234

Changed

  • Update Docker ci docs #1202
  • Remove Json encoder and Stream transport #1235
  • Move from uint63 to uint64 for trace_id span_id and parent_id #1237
  • Remove redundant dd_trace_tracer_is_limited() calls #1239
  • Change config.m4 to allow in-tree build #1238
  • Eliminate "innerhook" from trace_method and trace_function #1240
  • Remove TSRMLS_* macros from PHP 7 and PHP 8 #1241
  • Deferred loading with ZAI function-call seam (PHP 8) #1243
  • Speed up randomized testing using a post #1192 version #1245
  • Self update composer in the image we use to prepare the code in CI (#1221)

Fixed

  • Fix meta header name for language version in BGS agent request #1244
  • Fix flaky PCNTL tests (#1232)
dd-trace-php - 0.59.0

Published by labbati over 3 years ago

Added

  • [ZAI SAPI] Zai\trigger_error() SAPI function #1212
  • Autocomplete Makefile target names in buster dev images #1224

Changed

  • Use new buster containers in CI #1210
  • Remove _tmp suffix from development buster images #1217
  • Tidy the components/ #1216
  • Tidy up the docker-compose file a bit #1223

Fixed

  • Disable PCNTL in forked processes #1196
  • Updated contributing and fixed typo on Makefile::test_all #1218
  • Fix ingestion control reporting #1222
  • Skip tests that have development environment dependencies #1215 (thanks for the report @remicollet)
  • Always resolve curl class entry symbols at runtime (PHP 8) #1209 (thanks for the report @metaxy)
dd-trace-php - 0.58.0

Published by labbati over 3 years ago

Added

  • ZAI SAPI #1204
  • [ZAI SAPI] Add test helpers #1208
  • Add a Kubernetes example to container tagging tests #1206
  • Add Buster containers for PHP 5.4 through 7.4 #1201

Changed

  • Remove PHP version prefix from buster development containers #1203

Fixed

  • Handle Laravel 7+ generated:: prefix for unnamed routes #1198
dd-trace-php - 0.57.0

Published by labbati over 3 years ago

Added

  • Add curl_multi scenarios to randomized tests #1171 #1173
  • Add component system, string_view and sapi components #1172
  • Add tests for Symfony 5.2 #1177 #1178
  • Support PsrHttpServerMiddleware for Slim 4 #1170
  • Container tagging for AWS Fargate 1.4+ #1190

Changed

  • Remove non php8 code from ext/php8 folder #1165
  • Enable Symfony on PHP 8.0 #1176 #1178
  • Move container ID detection to the extension level #1143
  • Refactor the PHP 8 exception serialization #1179
  • Accept multiple requests dumped from request-replayer (testing) #1193
  • Exclude dockerfiles directory from the composer package #1192 (thanks for the contribution @djcrock)
  • Disable php language tests ext/openssl/tests/bug54992.phpt (#1197)
  • Import framework tests suite from dd-trace-ci to dd-trace-php (#1183)
  • Do not keep alive connections while executing randomized testing (#1163)

Fixed

  • Fix "undefined symbol: curl_multi_ce" on PHP 8 #1181 (thanks for the report @metaxy)
  • Compatibility with opentracing/opentracing:1.0.1 #1188 (thanks for the contribution @bbaga)
dd-trace-php - 0.56.0

Published by labbati over 3 years ago

Added

  • Add randomized testing to test hundreds of different scenarios #1131
  • Add configured http headers to root span #1154
  • Add the possibility to freeze a regression in a specific randomized tests scenario #1153

Changed

  • Remove non php7 code from ext/php7 folder #1162
  • Remove non php5 code from ext/php5 folder #1164

Fixed

  • Add missing dependency on curl extension for PHP 8 #1144 (Thanks @remicollet!)
  • Fix initialization of curl_multi_init() for distributed tracing #1159
  • Add comment to long running example for method instead of function #1149
  • Fix linting + xfail a flaky test #1147
  • Update links in README.md to configuration and OT docs #1069
  • Fix clang-format installation after circleci image update to buster #1141
dd-trace-php - 0.55.0

Published by labbati over 3 years ago

Added

  • Slim 4 integration #1136
  • Add support for redis cluster #1137
dd-trace-php - 0.54.0

Published by labbati over 3 years ago

Added

  • Support distributed tracing for calls to curl_multi_exec() #1119

Changed

  • Refactor PHP 7 curl distributed tracing #1123
  • Real package verification on nginx, cli, apache #1129
dd-trace-php - 0.53.0

Published by labbati almost 4 years ago

Added

  • Add function to correctly extract trace id in all contexts #1125

Fixed

  • Attach fatal errors to userland root span on PHP 5.6 + PHP 5.5 #1109
  • Rebuild CentOS 6 containers #1116
  • NullLogger is essential, not optional #1113
  • Make Uri to resource name normalization case insensitive #1120
  • Avoid empty resource names in Yii in case of root / paths #1122
  • Fix multiple deferred integration loading on PHP from 7.0 to 7.2 #1121
  • Fix error in case of x-datadog-origin header in distributed tracing on PHP 7.0-7.2 #1124
dd-trace-php - 0.52.0

Published by SammyK almost 4 years ago

Added

  • Laravel 8 support #1100 #1102
  • Enable Yii 2 on PHP 8 #1106
  • Add PHP 8 asan tests #1108

Changed

  • Use the observer API on PHP 8 #1089
  • Remove integrations that do not yet support PHP 8 #1103
  • Update containers to PHP 8.0.0 #1111

Fixed

  • Fix distributed tracing on PHP 8 #1099
dd-trace-php - 0.51.0

Published by labbati almost 4 years ago

Added

  • Support service split by host in PHPRedis integration #1084
  • Support service split by host in Predis integration #1094
  • Load WordPress 5 integration on PHP 5 #1086
  • Custom pre-RC5 build #1093
  • Second custom pre-RC5 build #1096

Changed

  • Consolidate 3rd party code into vendor directory #1082
  • Separate extension code by PHP major version #1085
  • Make include paths relative to ext/ #1087
  • Copy PHP 7 extension code to php8 directory #1088
  • Upgrade to composer 2 #1075
  • Fix composer self-update on master properly handling cached directories #1092
  • Make execution of ext tests locally faster and easier #1091
dd-trace-php - 0.50.0

Published by SammyK almost 4 years ago

Added

  • Experimental support for PHP 8.0.0 RC 2 & RC 3 (Provided for testing only and not intended for use on production) #1039 #1053 #1054 #1076
  • Trace Symfony controller and more #1048
  • Add example for long running processes #1049
  • Add tests and support for WordPress 5 on PHP 7 #1058 #1059 #1081
  • Add tests for Symfony 5 #1060 #1062

Changed

  • Build alpine packages on alpine and add e2e package verification #774
  • Add fatal error info to DDTrace\Tracer made root spans on PHP 7 #1040
dd-trace-php - 0.49.0

Published by SammyK about 4 years ago

Added

  • Add .gdbinit files from released PHP versions #996
  • Support PHP 5.5 #1008, #1018, #1020, #1030, #1032
  • Add PHP 5.4 support to PECL package #1019
  • Add Levi and Luca as lead developers to package.xml #1025
  • Close open spans on fatal errors #1028
  • Attach fatal errors to all open internal spans #1034
  • Experimental PHP 8.0.0 RC 1 support (Provided for testing only and not intended for use on production) #1027 #1036 #1041

Changed

  • Enable the background sender by default on PHP 5.4 #991
  • Remove userland references to sandboxing #1003
  • Defer loading of PDO, Memcached, Slim, WordPress, and Yii integrations until first usage #1006
  • Sandbox flush in limited mode on PHP 5.4 #1009
  • Clear separation in testing of src/api vs src/DDTrace #1017
  • Harden curl integration #1024
  • Compile src/DDTrace/version.php into _generated.php to avoid loading it at runtime #1026
  • Disable instrumenting generators on PHP 5 #1050

Fixed

  • Fix pecl-build for real releases #998
  • Properly group traces sent in batch during long running scripts #1029
  • Add back support for trace analytics to curl integration #1031
dd-trace-php - 0.48.3

Published by morrisonlevi about 4 years ago

Fixed

  • Fix sigsegv in deferred loading #1022. Thanks @walf443 for reporting this with an excellent reproduction case. This affects users calling these methods when ddtrace's request init hook is not run (such as DD_TRACE_ENABLED=0):
    • Redis::__construct
    • Predis\Client::__construct
    • Elasticsearch\Client::__construct
dd-trace-php - 0.48.2

Published by SammyK about 4 years ago

Important

Please upgrade to 0.48.2 or 0.48.3 if you are on 0.48.0 or 0.48.1, especially if you use Redis, Predis, or Elasticsearch as #1013 fixes a segmentation fault that can occur.

Changed

  • Update excluded modules #1011
  • Deprecate dd-doctor.php #1014

Fixed

  • PHP 5.4 build in ZTS mode #1011
  • Call ddtrace_engine_hooks_{rinit,rshutdown} #1013 (Thanks for the report @alecavallo!)
dd-trace-php - 0.48.1

Published by morrisonlevi about 4 years ago

Fixed

  • Symfony HttpException with status less than 500 should not be considered an error #995, #1002 (thanks, @franek!)
  • Block Zend signals from background sender thread #1000
  • Fix out-of-sync issue if span stack is closed while a closure is running #1001