Para algumas funções, a API do agente Python da New Relic tem várias opções para realizar a mesma coisa. Por exemplo, rastrear uma função para fornecer mais detalhes sobre uma transação do monitor New Relic pode, teoricamente, ser realizado, dependendo da sua configuração, com qualquer uma das seguintes API:
Um
decorator
. Esta é uma API de tempo de importação. Esta será a opção mais fácil para a maioria das configurações de aplicativos Python.
Um
context manager
. Esta é uma API em nível de tempo de execução. Essas API podem ser usadas se você quiser trace código que não está encapsulado em uma função.
Um
wrapper
. O wrapper é usado para criar uma função encapsulada sem o uso de um decorador.
Um
path-based wrapper
. Isso seria usado para agrupar funções fora do código em que foram declaradas. Por exemplo, pode ser usado para instrumentar código de biblioteca que você não deseja modificar.
Para obter um exemplo de uma API Python do agente com todos os quatro possíveis, consulte a entrada de chamada function_trace
.