• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

Magentoに特化した機能

New Relic の PHP エージェントには、Magento 1 および 2 の Community エディションおよび Enterprise エディション向けの自動トランザクション名付けのサポートが含まれています。このドキュメントでは、この仕組みと、自動化された名前を使って Magento アプリケーションの問題を追跡する方法について説明します。

Magento 1

Magento 1 アプリケーションのトランザクションは、リクエストを処理するモジュール、コントローラー、アクションに基づいて名前が付けられます。たとえば、デフォルトの顧客アカウント ページのトランザクションにはcustomer/account/indexという名前が付けられます。これは、 Mage_Customer_AccountControllerindexAction()メソッド( customerモジュールのaccountコントローラ) がトランザクションを担当していたことを示します。

Magento 2

Magento 2 アプリケーションの通常の Web トランザクションには、Magento 1 トランザクションと同様の名前が付けられます。トランザクション名は、リクエストを処理したモジュール、コントローラー、およびアクションをエンコードします。たとえば、 Magento\Customer\Controller\Account\Indexコントローラー クラスによって処理されるリクエストの名前もcustomer/account/indexになります。

Web API

Magento 2 には、 Web API のサポートも組み込まれています。これらは、RESTやSOAPで利用可能なウェブサービスです。

PHP エージェント バージョン 7.0以降、New Relic は、この機能を使用するトランザクションの自動命名をサポートしています。PHP エージェントの以前のバージョンでは、デフォルトで Web API トランザクションにunknownという名前が付けられていました。

Magento 2 web APIs

Comments

SOAP

SOAP トランザクションには、リクエストを処理したサービス クラスとメソッドに基づいて名前が付けられます。たとえば、トランザクション名Webapi/Soap/Magento\Catalog\Api\CategoryManagementInterface/getTreeは、SOAP リクエストがMagento\Catalog\Api\CategoryManagementInterfaceを実装するモデルのgetTree()メソッドによって処理されたことを示します。

WSDL トランザクションにも自動的に名前が付けられます。 Webapi/Soap/WsdlListは使用可能な API のリストを返すトランザクションに使用され、 Webapi/Soap/Wsdlは特定の SOAP API の WSDL を取得するトランザクションに使用されます。

REST

Magento 2.1 以降、REST トランザクションにはSOAPトランザクションと同様の名前が付けられます。唯一の違いは、REST リクエストの接頭辞がWebapi/SoapではなくWebapi/Restであることです。

Magento 2.0 では、PHP エージェントは、トランザクションを処理した特定のサービス クラスとメソッドに自動的に名前を付けることができません。代わりに、REST リクエストは現在、汎用名FrontController/Magento\Webapi\Controller\Rest\Interceptorを受け取ります。これは、将来の PHP エージェントのリリースで改善される可能性があります。回避策として、より高い解像度が必要な場合、New Relic はサービス メソッドでnewrelic_name_transaction()を使用することを推奨します。

FrontControllerInterfaceのプラグイン

Magento 2 では、 Magento\Framework\App\FrontControllerInterfaceインターフェースのプラグインまたはインターセプターを登録して、デフォルトのルーティング エンジンを置き換えることができます。たとえば、 Web API 機能は次のように動作します。

インターセプターがMagento\Framework\App\FrontControllerInterfaceに登録されている場合、New Relic の PHP エージェント バージョン 7.0 以降を使用する場合、そのクラスの名前がデフォルトのトランザクション名として使用されます。必要に応じて、 newrelic_name_transaction()使用して手動で名前を付けることもできます。

トランザクションの自動ネーミングの解除

自動トランザクション命名が役に立たない場合は、 newrelic_name_transaction() API 関数を使用して PHP エージェントの自動トランザクション命名をオーバーライドできます。

Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.