Passer au contenu principal

Installation et utilisation

Pour utiliser l’instrumentation Apollo Gateway, vous devez désactiver l’instrumentation GraphQL dans le service qui agit comme passerelle. Cela est nécessaire car la passerelle enverra ses propres spans à l’aide de l’instrumentation OpenTelemetry @apollo/gateway pour les requêtes qu’elle relaie vers les services qui implémentent le supergraph. Pour ce faire, vous pouvez utiliser l’option disableInstrumentations dans la configuration appsignal.
const { Appsignal } = require("@appsignal/nodejs");

new Appsignal({
  active: true,
  name: "your-app-name",
  pushApiKey: "your-push-api-key",
  disableDefaultInstrumentations: ["@opentelemetry/instrumentation-graphql"],
});
Vous devez également activer l’instrumentation OpenTelemetry dans la configuration de votre Apollo Gateway :
const config = {
  telemetry: {
    includeDocument: true,
    reportExceptions: 1,
  },
};

Fonctionnalités

L’instrumentation Apollo Gateway enverra des spans racines à AppSignal en fonction des requêtes qu’elle reçoit et achemine vers les sous-graphes. Vous pourrez inspecter ces données dans la chronologie d’événements des problèmes de performance : Capture d'écran de la chronologie d'événements affichant les événements gateway.request Si vos services fédérés sont également instrumentés avec AppSignal, vous obtiendrez également les spans GraphQL habituels pour ceux-ci.