AWS API Gateway de surveillance

Le capteur « AWS API Gateway » est automatiquement déployé et installé une fois que vous avez installé l'agent « Instana ».

Remarque : pour connaître les autres services pris en charge par l' AWS, consultez la rubrique « AWS ».

Il existe trois types d'API (REST, HTTPet WebSocket) et les métriques qui sont extraites sont également basées sur ces dernières.

Capteur (collecte de données)

Configuration suivie

Les données d' API Gateway s suivantes sont collectées par le capteur AWS API Gateway :

  • ARN
  • Nom
  • Région
  • Protocole
  • Type de noeud final
  • Créé à
  • Zone de regroupement AWS

Métriques

Les indicateurs suivants sont collectés par le capteur « AWS API Gateway » :

REST API

Nom Description
API Demandes (nombre) Le nombre total de requêtes « API » sur une période donnée.
Temps d'attente total Délai entre le moment où API Gateway reçoit une demande d'un client et le moment où il renvoie une réponse au client. Le temps d'attente inclut le temps d'attente d'intégration et d'autres temps système API Gateway .
Temps d'attente d'intégration Délai entre le moment où API Gateway relaie une demande au système dorsal et celui où il reçoit une réponse du système dorsal.
Erreurs 4xx Nombre d'erreurs côté client capturées au cours d'une période donnée.
Erreurs 5xx Nombre d'erreurs côté serveur capturées au cours d'une période donnée.
Réussites en mémoire cache (nombre) Nombre de requêtes traitées à partir du cache de l' API e au cours d'une période donnée.
Echecs en mémoire cache (nombre) Le nombre de requêtes traitées par le serveur d'arrière-plan au cours d'une période donnée, lorsque la mise en cache d' API s est activée.

HTTP API

Nom Description
API Demandes (nombre) Le nombre total de requêtes « API » sur une période donnée.
Temps d'attente total Délai entre le moment où API Gateway reçoit une demande d'un client et le moment où il renvoie une réponse au client. Le temps d'attente inclut le temps d'attente d'intégration et d'autres temps système API Gateway .
Temps d'attente d'intégration Délai entre le moment où API Gateway relaie une demande au système dorsal et celui où il reçoit une réponse du système dorsal.
Erreurs 4xx Nombre d'erreurs côté client capturées au cours d'une période donnée.
Erreurs 5xx Nombre d'erreurs côté serveur capturées au cours d'une période donnée.

WebSocket API

Nom Description
Connexion (nombre) Nombre de messages envoyés à l'intégration de route $connect.
Message (nombre) Le nombre de messages envoyés à l'adresse WebSocket API, qu'ils proviennent du client ou qu'ils lui soient destinés.
Erreurs d'intégration Nombre de demandes qui renvoient une réponse 4XX/5XX de l'intégration.
Erreurs de client Nombre de demandes ayant une réponse 4XX renvoyée par API Gateway avant l'appel de l'intégration.
Erreurs d'exécution Erreurs qui se sont produites lors de l'appel de l'intégration.
Temps d'attente d'intégration Délai entre le moment où API Gateway relaie une demande au système dorsal et celui où il reçoit une réponse du système dorsal.

Droits requis

Les droits suivants sont nécessaires :

  • cloudwatch:GetMetricData
  • cloudwatch:GetMetricStatistics
  • cloudwatch:ListMetrics
  • apigateway:GET

Configuration

Les métriques de API Gateway sont extraites toutes les 60 secondes, qui peuvent être modifiées à l'aide de la configuration d'agent dans le fichier <agent_install_dir>/etc/instana/configuration.yml :

com.instana.plugin.aws.apigateway:
  cloudwatch_period: 60

Pour désactiver la surveillance des instances API Gateway , utilisez la configuration suivante:

com.instana.plugin.aws.apigateway:
  enabled: false

Configuration de proxy

Pour que le détecteur AWS spécifique utilise la configuration de proxy, ajoutez les paramètres de configuration d'agent suivants:

com.instana.plugin.aws.apigateway:
  proxy_host: 'example.com' # proxy host name or ip address
  proxy_port: 3128 # proxy port
  proxy_protocol: 'HTTP' # proxy protocol: HTTP or HTTPS
  proxy_username: 'username' # OPTIONAL: proxy username
  proxy_password: 'password' # OPTIONAL: proxy password

Surveillance de plusieurs comptes AWS

Pour configurer la surveillance de plusieurs comptes AWS avec un agent AWS dans la même région, voir la rubrique Surveillance de plusieurs comptes AWS .

AWS approche par profils nommés

Pour remplacer les profils utilisés pour surveiller API Gateway, utilisez la configuration suivante:

com.instana.plugin.aws.apigateway:
  profile_names:
    - 'profile2'
    - 'profile3'
Remarque : si vous définissez des profils au niveau du service, la configuration globale des profils d' AWS s sera remplacée.

Approche AWS STS

Pour remplacer les rôles IAM utilisés pour surveiller API Gateway, utilisez la configuration suivante:

com.instana.plugin.aws.apigateway:
  role_arns:
    - 'arn:aws:iam::<account_1_id>:role/<role_1_name>'
    - 'arn:aws:iam::<account_2_id>:role/<role_2_name>'
Remarque : si vous définissez des rôles IAM au niveau du service, la configuration globale des rôles IAM de AWS sera remplacée.

Filtrage

Vous pouvez définir plusieurs balises, séparées par une virgule. Les balises doivent être fournies en tant que paire clé-valeur. Pour faciliter la configuration, vous pouvez définir les balises à inclure dans la reconnaissance ou à exclure de la reconnaissance. Si vous définissez des balises dans les deux listes (include et exclude), la liste exclude a une priorité plus élevée. Si vous n'avez pas besoin de filtrer les services, vous n'avez pas besoin de définir les balises. Il n'est pas obligatoire de définir toutes les valeurs pour activer le filtrage.

Vous pouvez spécifier la fréquence à laquelle les détecteurs interrogent les ressources référencées AWS à l'aide de la propriété de configuration tagged-services-poll-rate . Par défaut, la valeur est 300 secondes.

Remarque : les balises ne sont disponibles qu'avec l' agent « AWS ».

Pour définir la fréquence à laquelle les détecteurs interrogent les ressources balisées, utilisez la configuration suivante:

com.instana.plugin.aws:
  tagged-services-poll-rate: 60 #default 300

Pour inclure des services par balises dans la reconnaissance, utilisez la configuration suivante:

com.instana.plugin.aws.apigateway:
  include_tags: # Comma separated list of tags in key:value format (e.g. env:prod,env:staging)

Pour exclure des services par balises de la reconnaissance, utilisez la configuration suivante:

com.instana.plugin.aws.apigateway:
  exclude_tags: # Comma separated list of tags in key:value format (e.g. env:dev,env:test)

Les services AWS sans balises sont surveillés par défaut, mais peuvent être exclus en définissant la zone include_untagged sur false:

com.instana.plugin.aws.apigateway:
  include_untagged: false # True value by default