Tous les produits
Search
Centre de documentation

API Gateway:Afficher les journaux d'appels API avec Simple Log Service

Dernière mise à jour :Aug 27, 2026

API Gateway s'intègre parfaitement à Simple Log Service (SLS). Utilisez SLS pour interroger les journaux en temps réel, les télécharger et analyser les statistiques selon plusieurs dimensions. Vous pouvez également exporter les journaux vers Object Storage Service (OSS) ou MaxCompute.

Fonctionnalités

Interrogation de journaux en ligne

Cette fonctionnalité facilite le dépannage et l'analyse statistique.

Journaux d'appels détaillés

Les journaux contiennent les champs suivants : Les champs requestQueryString, requestHeaders, requestBody, responseHeaders et responseBody sont disponibles uniquement pour les instances dédiées. Vous devez les activer sur la page des détails du groupe.

Paramètre

Description

apiGroupUid

ID du groupe d'API.

apiGroupName

Nom du groupe d'API.

apiUid

ID de l'API.

apiName

Nom de l'API.

apiStageUid

ID de l'environnement.

apiStageName

Nom de l'environnement.

httpMethod

Méthode HTTP utilisée pour l'appel.

path

Chemin de la requête.

domain

Nom de domaine utilisé pour l'appel.

statusCode

Code d'état HTTP.

errorMessage

Message d'erreur.

appId

ID de l'application de l'appelant.

appName

Nom de l'application de l'appelant.

clientIp

Adresse IP du client.

exception

Message d'erreur spécifique provenant du service backend.

exchangeTimestamp

Horodatages des événements d'E/S au cours du cycle de vie de la requête.

  • FrontRequestStart : heure à laquelle API Gateway a commencé à recevoir la requête du client.

  • FrontRequestEnd : heure à laquelle API Gateway a fini de recevoir la requête du client.

  • BackendRequestStart : heure à laquelle API Gateway a commencé à envoyer la requête au service backend.

  • BackendRequestEnd : heure à laquelle API Gateway a fini d'envoyer la requête au service backend.

  • BackendResponseStart : heure à laquelle API Gateway a commencé à recevoir la réponse du service backend.

  • BackendResponseEnd : heure à laquelle API Gateway a fini de recevoir la réponse du service backend.

  • FrontResponseStart : heure à laquelle API Gateway a commencé à envoyer la réponse au client.

  • FrontResponseEnd : heure à laquelle API Gateway a fini d'envoyer la réponse au client.

providerAliUid

ID du compte du fournisseur d'API.

region

Région. Exemple : cn-hangzhou.

requestHandleTime

Heure de la requête (UTC).

requestId

ID de requête unique global.

requestSize

Taille de la requête en octets.

responseSize

Taille de la réponse en octets.

serviceLatency

Temps total passé à accéder aux ressources backend, y compris l'allocation des ressources de connexion, l'établissement de la connexion et l'invocation du service backend. Unité : millisecondes.

errorCode

Code d'erreur. Exemple : X500ER.

requestProtocol

Protocole de requête du client. Valeurs possibles : HTTP, HTTPS et WS.

instanceId

ID de l'instance où s'exécute le service API.

initialRequestId

Si une API en appelle une autre (par exemple, API-1 appelle API-2), ce champ enregistre l'ID de requête du premier appel (API-1) dans le journal du second appel (API-2).

clientNonce

En-tête X-Ca-Nonce de la requête du client.

requestQueryString

Chaîne de requête de la requête du client (instances dédiées uniquement).

requestHeaders

En-têtes de la requête du client (instances dédiées uniquement).

requestBody

Corps de la requête du client, jusqu'à 1 024 octets (instances dédiées uniquement).

responseHeaders

En-têtes de la réponse de l'API (instances dédiées uniquement).

responseBody

Corps de la réponse de l'API, jusqu'à 1 024 octets (instances dédiées uniquement).

consumerAppKey

AppKey de la requête API.

totalLatency

Latence totale de la requête API en millisecondes.

customTraceId

ID de trace du journal de bout en bout.

jwtClaims

Revendications analysées à partir du jeton Web JSON (JWT). Vous pouvez configurer cela dans les paramètres du groupe d'API.

plugin

Liste des plug-ins qui ont correspondu à la requête API et leur contexte associé.

Afficher les journaux API avec Simple Log Service

Méthodes de configuration

Deux méthodes de configuration sont disponibles :

  1. Utilisez la fonctionnalité Log Audit dans la console SLS pour synchroniser les journaux API Gateway. Cette méthode collecte les journaux de toutes les régions dans le projet Log Audit. Aucune configuration supplémentaire n'est requise dans API Gateway.

  2. Configurez l'ingestion de données pour API Gateway dans la console SLS. Avec cette méthode, vous devez configurer la synchronisation une fois pour chaque région.

Les sections suivantes décrivent ces deux méthodes.

Remarque

Pour Alibaba Gov Cloud et Alibaba Finance Cloud, vous ne pouvez synchroniser les journaux SLS qu'en utilisant la première méthode.

Utilisation de Log Audit

  1. Ouvrez la page de configuration du service Log Audit et sélectionnez une région centrale, où tous les journaux API Gateway ultérieurs seront livrés.

    Le haut de la page Global Configurations affiche la région et le nom du projet central. En dessous, un tableau présente les éléments de configuration pour les produits cloud tels que ActionTrail, Object Storage Service (OSS), RDS, Virtual Private Cloud (VPC), DNS, PolarDB, Server Load Balancer (SLB) et Application Load Balancer (ALB). Les éléments incluent l'interrupteur de collecte de journaux, Storage Mode (Centralized ou By Region), la période de rétention, Sync To Center et Archive After N Days. Activez les interrupteurs de collecte de journaux pour les produits cloud requis, puis cliquez sur Save dans le coin supérieur droit. Dans la section Collection and Synchronization Authorization, si un message indique que le compte n'est pas autorisé à collecter et synchroniser les journaux, effectuez l'autorisation en utilisant manual authorization ou Authorize with AccessKey.

  2. Sélectionnez une méthode d'autorisation et suivez les instructions à l'écran. Cet exemple utilise l'autorisation manuelle.

  3. Une fois l'autorisation terminée, les journaux d'appels API Gateway sont disponibles dans le Logstore apigateway_log au sein du projet central.

    Les journaux d'appels API Gateway incluent des champs tels que apiGroupName, apiGroupUid, apiName, apiStageName, apiStageUid et apiUid. Vous pouvez afficher les paires clé-valeur détaillées pour chaque entrée de journal dans l'onglet Raw Logs.

Configuration dans la console API Gateway

1) Assurez-vous d'avoir activé SLS. Ensuite, connectez-vous à la console SLS, sélectionnez la région cible et créez un projet et un Logstore. Cet exemple utilise la région Chine (Hangzhou).

Dans la boîte de dialogue Create Project, saisissez un Project Name (par exemple, gateway-t***), conservez le resource group par défaut et sélectionnez vos préférences dans la section Enable Logging for, telles que Operation Log et Global Log. Cliquez ensuite sur OK. Une fois le projet créé, cliquez sur Create Logstore dans la boîte de dialogue qui apparaît. Lors de la création du Logstore, configurez ses paramètres. Par exemple, définissez Logstore Name sur gateway_log, Type sur Standard, Billing Mode sur Pay-By-Data-Written, Data Retention Period sur 30 jours et Number of Shards sur 2. Activez Auto Split Shard (jusqu'à un maximum de 64 shards) et Log Public IP, puis cliquez sur OK. Dans la dernière boîte de dialogue de confirmation, cliquez sur Data Import Wizard.

2) Configurez l'ingestion de données API Gateway et sélectionnez le produit API Gateway.

Après avoir sélectionné API Gateway, la page Data Source Configuration s'affiche. Confirmez que l'autorisation RAM est terminée (la page affiche « You have authorized Log Service to distribute logs »). Dans la section Create Distribution Rule, confirmez que les journaux d'accès API Gateway sont importés dans le Logstore de destination, puis cliquez sur Next. Continuez à cliquer sur Next lors des étapes restantes pour terminer la configuration.

Affichage des journaux

Connectez-vous à la console SLS pour afficher les journaux et rechercher les journaux d'appels à l'aide de la syntaxe de requête SLS.

Dans les résultats de la requête, chaque entrée de journal contient des champs tels que apiGroupName, apiGroupUid, apiName, __source__, __tag__:__receive_time__ et __topic__. Vous pouvez filtrer les journaux par champ dans le volet Quick Analysis à gauche, ou utiliser la syntaxe de requête dans la zone de recherche en haut pour des recherches précises.

Personnalisation des rapports de requête

Vous pouvez personnaliser les rapports de requête en fonction de vos besoins métier. Pour obtenir des instructions, consultez la rubrique Créer un tableau de bord.