Pour certaines fonctions, l’API de l’agent Python New Relic dispose de plusieurs options pour accomplir la même chose.Par exemple, le traçage d’une fonction pour fournir plus de détails sur une transaction monitorée par New Relic peut théoriquement être réalisé, selon votre configuration, avec l’une des API suivantes :
- Un decorator. Il s’agit d’une API d’importation. Ce sera l’option la plus simple pour la plupart des Python application configurations .
- Un context manager. Il s’agit d’une API de niveau d’exécution. Ces API peuvent être utilisées si vous souhaitez trace du code qui n'est pas encapsulé dans une fonction.
- Un wrapper. Le wrapper est utilisé pour créer une fonction encapsulée sans l'utilisation d'un décorateur.
- Un path-based wrapper. Cela serait utilisé pour encapsuler des fonctions en dehors du code dans lequel elles sont déclarées. Par exemple, il peut être utilisé pour instrumenter du code de bibliothèque que vous ne souhaitez pas modifier.
Pour un exemple Python API d' d'agent avec ces quatre possibilités, voir function_trace
l'entrée d'appel .