This documentation is for the PHP tracer v1.x. If you are looking for the PHP tracer v0.x documentation, see the legacy
PHP Compatibility Requirements
documentation.
PHP APM のランタイムサポートポリシー
PHP Datadog Trace ライブラリはオープンソースです。詳細については、GitHub リポジトリをご覧ください。
Datadog APM for PHP は、ホスト OS や PHP ランタイム、特定の PHP ライブラリ、 Datadog Agent や API の特定のバージョンで定義される依存関係に基づいて構築されています。
これらのバージョンがメンテナによってサポートされなくなった場合、 Datadog APM for PHP はこれらのサポートにも制限をかけます。
サポートレベル
レベル | サポート内容 |
---|
非対応 | 実装していません。特別なご要望はカスタマーサポートチームにお問い合わせください。 |
ベータ版 | 初期実装です。まだすべての機能が含まれていない可能性があります。新機能のサポート、バグやセキュリティの修正は、ベストエフォートで提供されます。 |
一般提供 (GA) | 全機能の完全実装。新機能、バグ、セキュリティフィックスを完全サポート。 |
メンテナンス | 既存機能の完全実装。新機能は受けません。バグフィックス、セキュリティフィックスのみの対応となります。 |
レガシー | レガシーな実装。機能は限定されますが、メンテナンスは提供されません。[特別なご要望がある場合は、サポートチームにお問い合わせください。 |
サポート終了 (EOL) | サポートなし。このバージョンはまだ使用可能ですが、バグ修正は提供されません。 |
PHP APM supports the following PHP versions (both ZTS and NTS):
Note:
PHP 5.x is not supported starting version 1.0.0. If you are using PHP 5, you can still use the PHP tracer up to version
0.99.
If you are using PHP 5.x version in your application and have a feature request which is critical for your business needs, contact
Datadog Support.
It's recommended to use
officially supported versions of PHP, especially 8.0+.
PHP バージョン | サポートレベル | パッケージバージョン |
---|
8.3.x | 一般提供 | > 0.93.0+ |
8.2.x | 一般提供 | > 0.82.0+ |
8.1.x | 一般提供 | > 0.66.0+ |
8.0.x | 一般提供 | > 0.52.0+ |
7.4.x | 一般提供 | All |
7.3.x | 一般提供 | All |
7.2.x | 一般提供 | All |
7.1.x | 一般提供 | All |
7.0.x | 一般提供 | All |
5.6.x | EOL | < 1.0.0 |
5.5.x | EOL | < 1.0.0 |
5.4.x | EOL | < 1.0.0 |
PHP APM は以下の SAPI に対応しています。
SAPI | サポートの種類 |
---|
apache2handler | サポートされているすべての PHP バージョン |
cli | サポートされているすべての PHP バージョン |
fpm-fcgi | サポートされているすべての PHP バージョン |
cgi-fcgi | サポートされているすべての PHP バージョン |
FrankenPHP | サポートされているすべての PHP バージョン |
対応プロセッサアーキテクチャー
PHP APM は以下のアーキテクチャに対応しています。
プロセッサアーキテクチャー | サポートレベル | パッケージバージョン | サポートの種類 |
---|
Linux GNU amd64 (x86-64-linux-gnu ) | GA | All | サポートされているすべての PHP バージョン |
Linux MUSL amd64 (x86-64-linux-musl ) | GA | All | サポートされているすべての PHP バージョン |
Linux GNU arm64 (aarch64-linux-gnu ) | GA | > 0.78.0 | サポートされているすべての PHP バージョン |
Linux MUSL arm64 (aarch64-linux-musl ) | GA | > 0.78.0 | サポートされているすべての PHP バージョン |
Windows amd64 (x86_64-windows ) | GA | > 0.98.0 | PHP 7.2+ |
インテグレーション
Web フレームワークの互換性
Datadog はデフォルトで、すべての PHP Web フレームワークをサポートし、フレームワークレベルのインスツルメンテーション、または一般的な Web トレースを行うことができます。
フレームワークレベルのインスツルメンテーションには、内部メソッドのトレースとフレームワーク固有のタグ付けが含まれます。
一般的な Web トレースには、データベースや HTTP クライアントなどのサポートされたライブラリのスパンに加えて、コールから発生したレイテンシーやエラーを追跡するための web.request
スパンが含まれています。
次の表は、Datadog が正常にトレースするフレームワークとバージョンの一部を示しています。
ウェブフレームワーク:
モジュール | バージョン | サポートの種類 | インスツルメンテーションレベル |
---|
CakePHP | 2.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
CodeIgniter | 2.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
CodeIgniter | 3.x | サポートされているすべての PHP バージョン | 一般的な Web トレース |
Drupal | | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
FuelPHP | 1.1 | サポートされているすべての PHP バージョン | 一般的な Web トレース |
Laminas | | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Laravel | 4.2、5.x、6.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Laravel 8+ | 8.x, 9.x, 10.x, 11.x (tracer 0.52.0+ ) | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Lumen | 5.2+ | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Magento | 1 | サポートされているすべての PHP バージョン | 一般的な Web トレース |
Magento | 2 | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Neos Flow | 1.1 | サポートされているすべての PHP バージョン | 一般的な Web トレース |
Phalcon | 1.3、3.4 | サポートされているすべての PHP バージョン | 一般的な Web トレース |
RoadRunner | 2.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Slim | 2.x、3.x、4.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Symfony | 2.x, 3.3, 3.4, 4.x, 5.x, 6.x, 7.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
WordPress | 4.x、5.x、6.x | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Yii | 1.1、2.0 | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Zend Framework | 1.12, 1.21 | サポートされているすべての PHP バージョン | フレームワークレベルのインスツルメンテーション |
Zend Framework | 2.x | サポートされているすべての PHP バージョン | 一般的な Web トレース |
このリストにウェブフレームワークがない場合でも、トレーサーの最新リリースではそのまま使用できます。
Datadog is continuously adding more support for in-depth tracing for PHP web-frameworks. To request support for additional span metadata and framework internals, contact our awesome support team.
CLI ライブラリの互換性
デフォルトで、CLI SAPI からのトレースは無効になっています。PHP CLI スクリプトのトレースを有効にするには、DD_TRACE_CLI_ENABLED=true
とします。
モジュール | バージョン | サポートの種類 |
---|
CakePHP Console | 2.x | サポートされているすべての PHP バージョン |
Laravel Artisan | 5.x、8.x、9.x、10.x | サポートされているすべての PHP バージョン |
Symfony CLI | 4.x、5.x、6.x | サポートされているすべての PHP バージョン |
追加 CLI ライブラリに関するサポートをご希望の場合は、サポートチームまでお気軽にお問い合わせください。
データストアの互換性
モジュール | バージョン | サポートの種類 |
---|
Amazon RDS (PDO または MySQLi 使用) | (対応する PHP) | サポートされているすべての PHP バージョン |
Elasticsearch | 1+ | サポートされているすべての PHP バージョン |
Eloquent | Laravel 対応バージョン | サポートされているすべての PHP バージョン |
Laravel Queues | Laravel 対応バージョン | サポートされているすべての PHP バージョン |
Memcache | (対応する PHP) | サポートされているすべての PHP バージョン |
Memcached | (対応する PHP) | サポートされているすべての PHP バージョン |
MongoDB - mongo 拡張機能を使用 | 1.4.x | サポートされているすべての PHP バージョン |
MySQLi | (対応する PHP) | サポートされているすべての PHP バージョン |
PDO | (対応する PHP) | サポートされているすべての PHP バージョン |
PhpRedis | 3、4、5 | サポートされているすべての PHP バージョン |
Predis | 1.1 | サポートされているすべての PHP バージョン |
SQLSRV | (対応する PHP) | サポートされているすべての PHP バージョン |
追加データストアに関するサポートをご希望の場合は、サポートチームまでお気軽にお問い合わせください。
ライブラリの互換性
モジュール | バージョン | サポートの種類 |
---|
php-amqplib | 2.x、3.x | PHP 7.1+ |
Curl | (対応する PHP) | サポートされているすべての PHP バージョン |
Guzzle | 5.x, 6.x, 7.x | サポートされているすべての PHP バージョン |
Laravel Queue | Laravel 対応バージョン | サポートされているすべての PHP バージョン |
OpenAI | OpenAI supported versions | サポートされているすべての PHP バージョン |
ライブラリに関するサポートをご希望の場合は、サポートチームまでお気軽にお問い合わせください。
PHP 5 の深いコールスタック
コールスタックは PHP 5 のみに限定されます。詳細は深いコールスタックのトラブルシューティングページを参照してください。
ジェネレータ
ジェネレータのインスツルメントは、PHP 5 および PHP 7 ではサポートされていません。
PCNTL
Datadog supports tracing forked processes using pcntl. When a call to pcntl_fork
is detected, a dedicated span is created, and the forked process is instrumented. This can be disabled with DD_TRACE_FORKED_PROCESS
. Refer to the library configuration page for more details.
アプリケーションが pcntl_unshare(CLONE_NEWUSER);
を実行し、トレーサーがインストールされている場合、アプリケーションは致命的にクラッシュします。これは、CLONE_NEWUSER
を持つ unshare
がプロセスをスレッド化しないことを要求し、PHP トレーサーが別スレッドを使用してメインプロセスをブロックせずに Datadog Agent にトレースを送信するために起こります。
その他の参考資料