O agente PHP da New Relic inclui suporte para nomenclatura de transação automática para a Comunidade e edição Enterprise do Magento 1 e 2. Este documento descreve como isso funciona e como você pode usar os nomes automatizados para rastrear problemas em sua aplicação Magento.
Magento1
A transação no aplicativo Magento 1 é nomeada com base no módulo, controlador e ação que trata a solicitação. Por exemplo, uma transação para a página padrão da conta de clientes será denominada customer/account/index
, o que indica que o métodoindexAction()
em Mage_Customer_AccountController
(o controlador account
no módulo customer
) foi responsável pela transação.
Magento2
A transação normal da web no aplicativo Magento 2 tem nomes semelhantes às transações do Magento 1: o nome da transação codifica o módulo, o controlador e a ação que tratou a solicitação. Por exemplo, uma solicitação tratada pela classe do controlador Magento\Customer\Controller\Account\Index
também será denominada customer/account/index
.
API Web
Magento 2 também inclui suporte integrado para web APIs. São serviços web disponibilizados por meio de REST e SOAP.
A partir da versão 7.0 do agente PHP, o New Relic suporta a nomeação automática de transações que utilizam esta funcionalidade. Versões anteriores do agente PHP nomeavam a transação da API da web como unknown
por padrão.
Magento 2 web APIs | Comments |
---|---|
SABÃO | As transações SOAP são nomeadas com base na classe de serviço e no método que tratou a solicitação. Por exemplo, o nome da transação A transação WSDL também é nomeada automaticamente: |
DESCANSAR | A partir do Magento 2.1, as transações REST são nomeadas de forma semelhante à transação SOAP . A única diferença é que as solicitações REST são prefixadas com No Magento 2.0, o agente PHP não consegue nomear automaticamente a classe de serviço e o método específicos que manipularam a transação. Em vez disso, as solicitações REST recebem atualmente o nome genérico |
Plug-in FrontControllerInterface
É possível no Magento 2 registrar um plug-in ou interceptador para a interface Magento\Framework\App\FrontControllerInterface
para substituir o mecanismo de roteamento padrão. Por exemplo, é assim que funciona o recurso API da web .
Se um interceptor for registrado para Magento\Framework\App\FrontControllerInterface
, o nome dessa classe será usado como nome de transação padrão ao usar o agente PHP da New Relic versão 7.0 ou superior. Você também pode usar newrelic_name_transaction()
para nomeação manual, se necessário.
Fugir da nomenclatura automática da transação
Se a nomenclatura automática da transação não for útil, você poderá substituir a nomenclatura automática do agente PHP usando a função de API newrelic_name_transaction()
.