Login  |  Packages  |  Support  |  Bugs

Return

Changelog for datadog_trace
Release What has changed?
0.34.1 ### Fixed

- PHP notice of undefined indexes `REQUEST_METHOD` and `REQUEST_URI` when running the request init hook on unsupported SAPI's #637
- Distributed trace ID handling #645
0.34.0 ### Added

- Yii 2 support #624, #630
- Enable tracing when no autoloaders used by setting `DD_TRACE_NO_AUTOLOADER=true` #627
- Safe to-string conversion for all datatypes on `DDTrace\SpanData` #613

### Changed

- Improve dd-doctor with and container tagging detector when open_basedir is set #629
0.33.0 ### Added
- Trace origin support (Synthetics support) #615
0.32.1 ### Added

- Preview CodeIgniter v2 integration #588
- Preview WordPress v4 integration #570

Please report any issues you encounter with these two preview integrations.

### Fixed

- ZF1 integration response after loading #609
- Prevent `mysqli_connect()` span from closing twice #610
- Support mysqli usage when using real_connect approach #607
0.31.0 ### Added
- Add container id header to http transport (Container Tagging) - #552
- Attach exceptions to spans in new API #548

### Changed
- Migrate PDO integration to sandbox API #538
- Migrate Eloquent integration to sandbox API #559
- Migrate memcached integration to sandbox API #578
- Migrate elasticsearch integration to sandbox API #562

### Fixed
- Predis integration for clusters #574 (thank you @RaoulMeyer!)
- Avoid reserved word "fn" #543
- Fix ZTS builds, remove COMPAT_CTX_* #544
- Curl headers are overwritten when using `curl_copy_handle` function #502
- Correctly treat class names as case insensitive #571
- Static keyword handling #576
- Improve sandboxing of request init hook #583
- Make PHP API check more specific #590 (thank you @iedsapala!)
0.30.2 ### Fixed
- Ensure the request init hook is bound by the `open_basedir` INI directive #579
0.30.0 ### Fixed
- Shutdown span flushing blocking the process when forked #493
- Memory access errors in cases when PHP code was run after extension data was freed on request shutdown #505
- Request init hook working when open_basedir restriction is in effect #505
- Ensure global resources are freed in shutdown #521 #523
- Http transport not setting required `X-Datadog-Trace-Count` header #525

### Changed
- Remove `zend_execute_ex` override and trace `ZEND_DO_UCALL` #519
0.29.0 ### Fixed
- Edge case where the extension version and userland version can get out of sync #488

### Changed
- Prefix hostnames as service names with `host-` to ensure compatibility with the Agent #490
0.28.1 ### Fixed
- Race condition when reading configuration from within writer thread context #486
0.28.0 ### Added
- Officially support Symfony 3.0 and 4.0 #475

### Fixed
- Stack level too deep error due to changes in how PHP interprets Opcodes caused by the extension #477

### Changed
- Backtrace handler will be run only once and will display information about maximum stack size being reached #478
0.27.2 ### Changed
- Valgrind configuration to perform more thorough memory consistency verification #472

### Fixed
- Memory leak detected in tests #472
0.27.1 ### Fixed
- Memory leak when garbage collecting span stacks #469
0.26.0 ### Added
- Initial implementation of flushing spans via background thread #450

### Changed
- URL-normalization rule boundaries #457
0.23.0 **NOTE: We changed the way the service name can be configured. Now you must use `DD_SERVICE_NAME` instead of `DD_TRACE_APP_NAME` for consistency with other tracers. Usage of `DD_TRACE_APP_NAME` is now deprecated and will be removed in a future release.**

### Added
- Support for Lumen 5.2+ #416
- Tracing support from the CLI SAPI #422
- Support for Laravel Artisan #422

### Changed
- Now the way to configure service name is through `DD_SERVICE_NAME` instead of `DD_TRACE_APP_NAME` #432
0.22.0 ### Added
- Official support for PHP 7.3 #429
- Tracer limited mode where spans are not created to preserve resources #417

### Fixed
- Error when a subclassed integration returns an object that cannot be cast as a string #423
0.21.0 ### Added
- `dd_trace_forward_call()` to forward the original call from within a tracing closure #284

### Fixed
- `parent::` keyword not honored from a subclass when forwarding a call from a tracing closure #284
- Private and protected callable strings not resolved properly from a tracing closure #303
0.20.0 ### Added
- Force tracing or discarding trace via special Span tag (manual.keep and manual.drop) #409

### Fixed
- Resource use by caching configuration values instead of processing data on every access #406
0.19.0 ### Changed
- Span and SpanContext main implementation uses public fields to share data to allow faster serialization and overall Span overhead #398
- `DDTrace\Encoders\SpanEncoder::encode()` now takes an instance of `DDTrace\Data\Span` instead of `DDTrace\Contracts\Span` #398
- `DDTrace\Processing\TraceAnalyticsProcessor::process()` now takes an instance of `DDTrace\Data\Span` instead of `DDTrace\Contracts\Span` #398
- Improve performance of setTag and setResource #398
- Load required PHP files in one go #387
- Load optional PHP files without filesystem check #387
0.18.0 **NOTE: THIS IS A BREAKING CHANGE RELEASE**

This change should not impact most users.

### Added
- MessagePack serialization for traces sent to the Agent with a new function `dd_trace_serialize_msgpack()` #378

### Changed
- Request init hook module blacklist now avoids miss matching partial matches #372
- Add 10MB cap to payloads sent to the Agent #388
- Added an `getTracesAsArray()` method to `DDTrace/Contracts/Tracer` which returns an array of spans (which are also encoded as an array.) To encode an instance of `DDTrace\Contracts\Span` as an array, use `DDTrace/Encoders/SpanEncoder::encode($span)` #378
- `DDTrace/Transport::send()` now takes an instance of `DDTrace/Contracts/Tracer` instead of an `array` #378
- `DDTrace/Encoder::encodeTraces()` now takes an instance of `DDTrace/Contracts/Tracer` instead of an `array` #378
- The default encoder is now `DDTrace/Encoders/MessagePack`. You can still use the JSON encoder by setting the environment variable `DD_TRACE_ENCODER=json`. It is generally not recommended to use the JSON encoder as parsing JSON payloads at the Agent level is more CPU & memory intensive.
0.17.0 ### Added
- Integration aware spans #360
- Trace Analytics Client Configuration #367
0.16.1 ### Fixed

- Error traces don't appear in "Total Errors" panel #375
0.16.0 ### Changed
- When shutdown hook is executed we disable all tracing to avoid creating unnecessary spans #361
- Inside request init hook we disable all function tracing when we decide not to trace #361

### Added
- Disable request_init_hook functionality in presence of blacklisted modules via `ddtrace.internal_blacklisted_modules_list=some_module,some_other_module` #345 & #370
- Integration-level configuration #354
- `dd_trace_disable_in_request` function which disables all function tracing until request ends #361

### Fixed
- Symfony template rendering spans #359
- Laravel integration user ID errors #363
- Non-success HTTP response codes aren't properly categorized as errors in the APM UI #366
0.15.1 ### Added
- Symfony 2.3 web tests for resource name #349
- Update images and enable leak detection, split tests in CI to Unit, Integration and Web #299

### Fixed
- Resource name on Symfony 2.x requests served through controllers #341
- Sanitize url in web spans #344
- Laravel 5.8 compatibility #351
0.14.1 ### Fixed
- Large number of mysqli spans not containing relevant information #330
0.14.0 ### Added
- Loading of integrations before knowing if the library will be actually used #319
- Ability to define tracing for not yet defined methods and classes #325
0.13.4 Special thanks to @stayallive for helping us debugging the memory issues in his environment! His help and
guidance were of paramount importance.

### Fixed
- Accessing freed memory when instrumentation code un/instrumented itself #314
- Freeing `$this` object prematurely in PHP-FPM VM #317
0.13.3 ### Fixed
- 7.x handling of `$this` pointer passed to the closure causing errors in PHP VM #311
0.13.2 ### Added
- Optional extension .so files compiled with "-g" flag #306
- Log backtrace on segmentation fault, enabled via ddtrace.log_backtrace=1 #300

### Fixed
- Auto-instrumentation when user's autoloader throws exception on not found #305
0.13.1 ### Fixed
- Honor ddtrace provided by composer if user provided one #276
- Remove unused function that was moved to dispatch_table_dtor() (#291)
- PHP 5.4 incorrectly handling nested internal functions #295
0.13.0 ### Added
- Span::setResource as a legit method # 287
- Logging more span's info when in debug mode # 292

### Fixed
- Symfony 4.2 traces generation #280
- Memory leak and misshandling of return value in PHP 5.4 #281
- Drupal crashes (temporary workaround) #285
- Tracing of http status code in generic web requests #288
- Route not set in symfony 3.4 when user calls exit() #289
- Fix hash table dtor for PHP 7 #290
0.12.0 ### Added
- Support for global tags via the environment variable `DD_TRACE_GLOBAL_TAGS=key1:value1,key2:value2` #273

### Fixed
- Memory leaks in `$this` object and return value handling in PHP 5.6 and 7.x #268
- Alpine APK package file being badly formatted when some file paths were over 100 character long #274
- Extension being compatible with CentOS 6 and other distributions using old Glibc #265
0.11.0 **WARNING: THIS IS A BREAKING CHANGE RELEASE**

This change should not impact most of the users as starting from `0.10.0` it is not required (and not recommended) to
manually set the transport. `DDtrace\Transport\Http` no longer accepts a logger as the second argument as it uses
the globally registered logger. If you are using the `Http` class, just remove the second argument from the constructor
invocation.

### Added
- Support for guzzle 6 #254
- Configurable Sampler #260
- Debug mode for logging #261
- Support for symfony 3.3 #266 and #243
- Build php 5.4 extension locally #267
- Basic tracing for unsupported and custom frameworks #264

### Fixed
- Composer PHP compatibility declaration #247
- Release notes for PECL and fix type-os in CHANGELOG #248
- Add missing files to PECL releases #252
- PHP 5.4 installation and build #255
- Trigger of autoloader un-tracing did not respect object #256
- docker-compose based packages verification #257
- Incorrect tar command in one-liner example from getting_started.md #258 - thanks @danielkay
- Auto-instrumentation in Symfony 3.4 and PHP 5.6 #262
- Type-o in command to install .deb packages #263
0.10.0 **WARNING: THIS IS A BREAKING CHANGE RELEASE**

Refer to the migration guide (/UPGRADE-0.10.md) for a detailed description.

At an high level here are the breaking changes we introduced:

- We removed OpenTracing as a required dependency. We still support OpenTracing, so you can do `OpenTracing\GlobalTracer::get()` in your code and still retrieve a OpenTracing compliant tracer, but OpenTracing dependency is now optional.
- We introduced auto-instrumentation and 1-step installation in place of manual registration of providers/bundles. Before, in order to see traces, you had to install our extension, add two dependencies to the composer file and add a provider (Laravel) or a bundle (Symfony). Starting from now you will only have to install the extension. You still have freedom to manually instrument the code, but only for advanced usage.

### Added
- Request init hook configuration allowing running arbitrary code before actual request execution #175
- Support OpenTracing without depending on it #193
- Initial C extension PHP 5.4 support #205
- Removal of external dependencies to support auto-instrumentation #206
- Migration from namespace based constants to class based constants for tags, formats and types #207
- Track integration loading to avoid re-loading unnecessary ones #211
- Documenting release steps #223
- Ability to run web framework tests in external web server #232
- Support for auto-instrumentation #237
- Support for Zend Framework 1 #238
- `Tracer::startRootSpan()` to track the root `Scope` instance which can be accessed with `Tracer::getRootScope()` #241

### Fixed
- The INI settings now appear in `phpinfo()` and when running `$ php -i` #242
0.9.1 ### Added
- Ability to reset all overrides via `dd_trace_reset`

### Changed
- By default do not throw an exception when method or function doesn't exist

### Fixed
- Eloquent integration calling protected `performInsert` method
0.9.0 ### Added
- PHP code compatibility with PHP 5.4 #194
- Move framework tests to tests root folder #198
- Move integrations tests to tests root folder #200
- Allow testing of multiple library versions #203
- Downgrade of phpunit to 4.* in order to prepare for php 5.4 #208
- Configurable autofinishing of unfinished spans on tracer flush #217

### Fixed
- Predis integration supporting constructor options as an object #187 - thanks @raffaellopaletta
- Properly set http status code tag in Laravel 4 integration #195
- Agent calls traced when using Symfony 3 integration #197
- Fix for trace and span ID's that were improperly serialized on the wire in distributed tracing contexts #204
- Fix noop tracer issues with Laravel integration #220
0.8.1 -

Return

PRIVACY POLICY  |  CREDITS
Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Fri Jan 25 00:05:01 2019 UTC
Bandwidth and hardware provided by: pair Networks