Référence de l’API de télémétrie Lambda - AWS Lambda

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Référence de l’API de télémétrie Lambda

Utilisez le point de terminaison de l’API de télémétrie Lambda pour abonner des extensions aux flux de télémétrie. Vous pouvez extraire le point de terminaison d’API de télémétrie à partir de la variable d’environnement AWS_LAMBDA_RUNTIME_API. Pour envoyer une demande d’API, ajoutez la version de l’API (2022-07-01/) et telemetry/. Par exemple :

http://${AWS_LAMBDA_RUNTIME_API}/2022-07-01/telemetry/

Pour la définition de la spécification OpenAPI (OAS) de la version des réponses d’abonnement 2022-12-13, voir ce qui suit :

Opérations d’API

S’abonner

Pour s’abonner à un flux de télémétrie, une extension Lambda peut envoyer une demande d’API d’abonnement.

  • Chemin/telemetry

  • MéthodePUT

  • En-têtes

    • Content-Type: application/json

  • Paramètres du corps de la demande

    • schemaVersion 

      • Obligatoire : oui

      • Type : String

      • Valeurs valides : "2022-12-13" ou "2022-07-01"

    • destination – Les paramètres de configuration qui définissent la destination de l’événement de télémétrie et le protocole de livraison de l’événement.

      • Obligatoire : oui

      • Type : objet

        { "protocol": "HTTP", "URI": "http://sandbox.localdomain:8080" }
      • protocol – Le protocole que Lambda utilise pour envoyer les données de télémétrie.

        • Obligatoire : oui

        • Type : String

        • Valeurs valides : "HTTP"|"TCP"

      • URI – L’URI auquel envoyer les données de télémétrie.

        • Obligatoire : oui

        • Type : String

      • Pour plus d’informations, consultez Spécification d’un protocole de destination.

    • types – Les types de télémétrie auxquels vous voulez que l’extension s’abonne.

      • Obligatoire : oui

      • Type : tableau de chaînes

      • Valeurs valides : "platform"|"function"|"extension"

    • buffering – Les paramètres de configuration de la mise en mémoire tampon des événements.

      • Obligatoire : non

      • Type : objet

        { "buffering": { "maxItems": 1000, "maxBytes": 256*1024, "timeoutMs": 100 } }
      • maxItems – Nombre maximum d’événements à mettre en mémoire tampon.

        • Obligatoire : non

        • Type : entier

        • Par défaut : 1 000

        • Minimum : 1 000

        • Maximum : 10 000.

      • maxBytes – Le volume maximal de télémétrie (en octets) à mettre en mémoire tampon.

        • Obligatoire : non

        • Type : entier

        • Par défaut : 262 144

        • Minimum : 262 144

        • Maximum : 1 048 576

      • timeoutMs – Durée maximum (en millisecondes) de mise en mémoire tampon d’un lot.

        • Obligatoire : non

        • Type : entier

        • Par défaut : 1 000

        • Minimum : 25

        • Maximum : 30 000

      • Pour plus d’informations, consultez Configuration de l’utilisation de la mémoire et de la mise en mémoire tampon.

Exemple de demande d’API d’abonnement

PUT http://${AWS_LAMBDA_RUNTIME_API}/2022-07-01/telemetry HTTP/1.1 { "schemaVersion": "2022-12-13", "types": [ "platform", "function", "extension" ], "buffering": { "maxItems": 1000, "maxBytes": 256*1024, "timeoutMs": 100 }, "destination": { "protocol": "HTTP", "URI": "http://sandbox.localdomain:8080" } }

Si la demande d’abonnement aboutit, l’extension reçoit une réponse HTTP 200 :

HTTP/1.1 200 OK "OK"

Si la demande d’abonnement échoue, l’extension reçoit une réponse d’erreur. Par exemple :

HTTP/1.1 400 OK { "errorType": "ValidationError", "errorMessage": "URI port is not provided; types should not be empty" }

Voici quelques codes de réponse supplémentaires que l’extension peut recevoir :

  • 200 – Demande effectuée avec succès.

  • 202 – Demande acceptée. Réponse à une demande d’abonnement dans un environnement de test local

  • 400 – Demande erronée

  • 500 – Erreur de service.