datadog_trace

pecl install datadog_trace

APM and distributed tracing for PHP

The Datadog PHP Tracer brings APM and distributed tracing to PHP.

Maintainer

  • Anil Mahtani Mirchandani (lead )
  • Levi Morrison (lead )
  • Luca Abbati (lead )
  • Bob Weinand (lead )
  • Joe Watkins (lead )
  • Pierre Bonet (lead )
  • Alejandro Estringana Ruiz (lead )
  • Sammy Kaye Powers (lead ) [inactive]
  • Florian Engelhardt (lead )
  • Luc Vieillescazes (lead )

Details

Stars: 369
Issue openned: 89
Downloads: 240509
0.87.0
1 year ago
Request a build
Request to the website owner's team the built this extension with this parameters. The result is not guaranteed and can be impossible for many reasons. The extension source code is frequently not upto date with the most recent PHP version.
If you have another code source for this extension, provide it in comment.
Please (or register) to request a build.
Version 0.87.0 change log


### Added
- Add config mode to datadog-setup.php #1951
- Add file hooking to DDTrace\install_hook #1989
- Allow DDTrace\install_hook to take any callable #1991
- Add Laminas integration #1990
- Add php-amqp integration #1996
- Add Laravel Queue integration with Span Links #2026
- Add SQLSRV Integration #2031
- Implement replacing of return values #2018

### Changed
- Allow for consuming an array via DDTrace\consume_distributed_tracing_headers #2010
- Allow DDTrace\install_hook to take any callable #1991
- Do not force cycle collection at runtime on flush by default #2046

### Fixed
- Add fixes for parametric testsuite #1988
- Fix exceptions and errors in auto_prepend_file #1987
- [Yii] Do not use module property if it doesn't exist #1999
- Load API files relative to the ComposerBootstrap.php instead of the ddtrace autoloader #2013
- Avoid side effects from errors within the sandbox #2015
- Prevent execution of install_hook() hooks after disabling tracer #2016
- Fix install_hook on functions returning by-reference #2017
- Fix #2012: Remove PHP 7-only types from signatures #2021 Thanks, @jmakuc, for reporting the issue.
- Ensure internal server errors are set on the root span in Laravel #2026
- Starting multiple traces in parallel does not confuse the limiter #2026
- Fix #2030: Segmentation fault with autoloaders bailing out #2037 Thanks, @NickStallman, for reporting the issue.
- Possible segfault when instrumenting `curl_setopt()` in PHP 7 #2039
- Fix resolving hooks within files declaring many functions on PHP 7.2 - 8.1 #2045

### Internal changes
- Increase the number of configuration entries in zai config #2020
- Reduce the allocated heap size of the elasticsearch7 container #2040

## Profiling

The profiling version number is now in sync with the tracer for stable releases.


### Changed
- Sync profiling version number with tracer #1992
- refactor: move upscaling to `libdatadog` #1984
- perf: raise sampling distance for allocations to 2048 KB #2036

### Fixed
- Fix crashes when allocation sampling occurs in certain places #2039

### Internal changes
- add test to ensure we do not crash with fibers #2003
- add stack walking test #2034

## Application Security Management (0.8.0)
### Fixed
- Amend issue when getting agent host and port DataDog/dd-appsec-php#230
- Flush socket on body limit DataDog/dd-appsec-php#233
- Set appsec disabled when ddtrace is not enabled DataDog/dd-appsec-php#245
- Cap retry to five minutes rc polling DataDog/dd-appsec-php#246
- Avoid updating waf when no updates provided on poll DataDog/dd-appsec-php#250

### Added
- Custom rules support DataDog/dd-appsec-php#235
- Engine update batcher DataDog/dd-appsec-php#248

### Changed
- Refactor capabilities DataDog/dd-appsec-php#227
- Refactor service DataDog/dd-appsec-php#229
- Update ip algorithm DataDog/dd-appsec-php#237
- Handle request-lifecycle atomically DataDog/dd-appsec-php#249
- Update-only engine listener and atomic config handling DataDog/dd-appsec-php#253

### Internal Changes
- Upgrade tracer to 0.85.0 DataDog/dd-appsec-php#226
- Setup python 3.9 for system tests DataDog/dd-appsec-php#228
- Update WAF to 1.9.0, Ruleset to 1.6.0 and Tracer to 0.86.1 DataDog/dd-appsec-php#234
- Disable apache2 restart test on ZTS DataDog/dd-appsec-php#236
- Implement abstract methods of listener on test DataDog/dd-appsec-php#239
- Add test to ensure path parser does not count on /config ending DataDog/dd-appsec-php#240
- Update ruleset to 1.7.0 DataDog/dd-appsec-php#252
- Update html blocked template DataDog/dd-appsec-php#254
- Upgrade WAF to 1.10.0 and add custom_rules capability DataDog/dd-appsec-php#255

requires:

  • php >=7.0<=8.2.99
  • pearinstaller >=1.4.0
  • json