Bibliothèque Lambda Datadog pour Go
Rapport de recherche Datadog : Bilan sur l'adoption de l'informatique sans serveur Rapport : Bilan sur l'adoption de l'informatique sans serveur

Bibliothèque Lambda Datadog pour Go

CircleCI Code Coverage Slack Godoc License

La bibliothèque Lambda Datadog pour Go permet de recueillir des métriques Lambda optimisées, d’activer le tracing distribué et d’envoyer des métriques custom à partir de fonctions AWS Lambda.

Installation

Suivez les instructions d’installation, et consultez les métriques optimisées, les traces et les logs de votre fonction dans Datadog.

Métriques optimisées

Une fois la bibliothèque installée, vous devriez pouvoir consulter les métriques optimisées pour votre fonction Lambda dans Datadog.

Consultez la documentation officielle sur les métriques Lambda optimisées Datadog.

Métriques custom

Une fois installée, vous devriez pouvoir envoyer des métriques custom à partir de votre fonction Lambda.

Consultez les instructions relatives à l’envoi de métriques custom à partir de fonctions AWS Lambda.

Tracing

Utilisez ddlambda.AddTraceHeaders(ctx, req) afin d’injecter les en-têtes de tracing Datadog dans les requêtes sortantes.

  req, err := http.NewRequest("GET", "http://example.com/status", nil)
  // Utilisez le même objet Context que celui attribué à votre gestionnaire Lambda.
  // Si vous ne souhaitez pas passer le contexte dans votre hiérarchie d'appels, vous pouvez utiliser ddlambda.GetContext()
  ddlambda.AddTraceHeaders(ctx, req)

  client := http.Client{}
  client.Do(req)
}

Variables d’environnement

DD_FLUSH_TO_LOG

Définissez cette variable sur true (conseillé) pour envoyer vos métriques custom de façon asynchrone (l’exécution de votre fonction Lambda n’est pas retardée) via CloudWatch Logs avec l’aide du Forwarder Datadog. Définie sur false par défaut. Si elle est définie sur false, vous devrez configurer DD_API_KEY et DD_SITE.

DD_API_KEY

Si DD_FLUSH_TO_LOG est définie sur false (non conseillé), la clé d’API Datadog doit être définie.

DD_SITE

Si DD_FLUSH_TO_LOG est définie sur false (non conseillé) et que vos données doivent être envoyées au site européen de Datadog, vous devez définir DD_SITE sur datadoghq.eu. Valeur par défaut : datadoghq.com.

DD_LOG_LEVEL

Définir sur debug pour activer les logs de debugging à partir de la bibliothèque Lambda Datadog. Valeur par défaut : info.

DD_ENHANCED_METRICS

Générer des métriques d’intégration Lambda Datadog optimisées, telles que aws.lambda.enhanced.invocations et aws.lambda.enhanced.errors. Valeur par défaut : true.

Ouvrir un ticket

Si vous rencontrez un bug avec ce package, faites-le nous savoir. Avant de créer un ticket, vérifiez que le problème n’a pas déjà été signalé dans les tickets existants pour éviter les doublons.

Lorsque vous créez un ticket, indiquez la version de datadog-lambda-go, la version de Go et la stack trace, si possible. Indiquez aussi les étapes à reproduire le cas échéant.

Vous pouvez également créer un ticket pour demander l’ajout d’une fonctionnalité.

Contributions

Si vous rencontrez un problème avec ce package et que vous avez un correctif, n’hésitez pas à faire une pull request en suivant la procédure.

Licence

Sauf indication contraire, tous les fichiers de ce référentiel sont distribués sous licence Apache version 2.0.

Ce produit inclut un logiciel développé chez Datadog (https://www.datadoghq.com/). Copyright 2020 Datadog, Inc.