Configuration de l'agent AWS pour la surveillance Lambda

L'agent AWS suit les versions existantes de la fonction Lambda et collecte les métriques d'exécution associées.

Pour configurer l'agent Instana AWS, vous devez configurer l'agent AWS pour la surveillance de AWS Lambda et, si nécessaire, utiliser une configuration de proxy.

Configuration de l'agent d' AWS s pour la surveillance d' AWS Lambda

Avant de configurer un agent d' AWS s pour la surveillance d' AWS Lambda, créez un compte AWS et sélectionnez une région dans laquelle vous déployez les fonctions d' AWS Lambda. Pour plus d'informations, consultez la page consacrée à l'agent « AWS ».

Ces étapes de configuration sont requises pour plusieurs fonctions liées à l' AWS Lambda, notamment les requêtes Dynamic Focus qui utilisent entity.aws.lambda.version l'opérateur, les balises Unbounded Analytics telles que faas.functionversion, ainsi que les tableaux de bord dédiés aux fonctions et versions de fonctions de l' AWS Lambda.

Pour configurer l'agent AWS en vue de la surveillance d' AWS Lambda, appliquez ces paramètres à l 'agent AWS.

Accorder davantage d'autorisations IAM

Pour collecter les métriques et les versions des fonctions d' AWS Lambda, les autorisations IAM suivantes doivent être accordées à l'agent AWS :

  • cloudwatch:GetMetricStatistics
  • cloudwatch:GetMetricData
  • lambda:ListTags
  • lambda:ListFunctions
  • lambda:ListVersionsByFunction
  • lambda:GetFunctionConfiguration
  • lambda:ListEventSourceMappings

Pour plus d'informations sur l'octroi de droits IAM à l'agent AWS , voir la documentation AWS agent installation .

Surveillance des versions de Lambda

Pour activer la surveillance des versions Lambda, accordez le droit lambda:ListVersionsByFunction IAM à l'agent AWS . Si l'autorisation requise fait défaut, Instana regroupe les métriques de toutes les versions.

Par défaut, Instana surveille individuellement les cinq versions les plus récentes de chaque fonction Lambda. Vous pouvez utiliser la configuration suivante pour définir le nombre de versions pour lesquelles Instana récupère les données :

com.instana.plugin.aws.lambda:
  number_of_versions: 3 # default 5

Jusqu'à 20 versions de Lambda peuvent être configurées.

Vous pouvez désactiver la surveillance des versions Lambda individuelles; dans ce cas, l' Instana regroupe les métriques de toutes les versions. Dans ce cas, les métriques d'agrégation sont jointes à la version \$LATEST pour la fonction Lambda.

Remarque : redémarrez l'agent après avoir effectué cette modification de configuration.

Désactivation de l'extraction des versions et des métriques de Lambda

Pour désactiver entièrement la surveillance des instances Lambda, utilisez la configuration suivante:

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

Pour désactiver uniquement l'extraction des données de versions, utilisez la configuration suivante:

com.instana.plugin.aws.lambda:
  fetch_versions: false

Modification de la fréquence d'interrogation

Les métriques de Lambda sont extraites toutes les 5 minutes. Vous pouvez modifier l'intervalle à l'aide de la configuration d'agent suivante dans <agent_install_dir>/etc/instana/configuration.yml:

com.instana.plugin.aws.lambda:
  cloudwatch_period: 300

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 (valeur par défaut: 300 secondes).

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

Utilisation de la configuration du proxy

Pour configurer l'agent AWS afin qu'il utilise la configuration de proxy, ajoutez les paramètres de configuration d'agent suivants:

com.instana.plugin.aws.lambda:
  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

Filtrage

Vous pouvez définir plusieurs balises séparées par une virgule. Utilisez les balises comme une paire clé-valeur séparée par le caractère : . Pour simplifier le processus de configuration, vous pouvez définir les balises que vous souhaitez inclure ou exclure de la reconnaissance. Lorsque vous définissez des balises dans les deux listes (include et exclude), la liste exclude est prioritaire. Si le filtrage des services n'est pas requis, ne définissez pas la configuration. Il n'est pas obligatoire de définir toutes les valeurs pour activer le filtrage.

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

com.instana.plugin.aws.lambda:
  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.lambda:
  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 vous pouvez les exclure en définissant la zone include_untagged sur false:

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

Remplacement des profils : l'approche des profils nommés d' AWS

Pour remplacer les profils qui doivent être utilisés pour surveiller Lambda, utilisez la configuration suivante:

com.instana.plugin.aws.lambda:
  profile_names:
    - 'profile2'
    - 'profile3'
Remarque : la définition de profils au niveau du service remplace la configuration globale des profils d' AWS.

Remplacer les rôles IAM : approche STS de l' AWS

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

com.instana.plugin.aws.lambda:
  role_arns:
    - 'arn:aws:iam::<account_1_id>:role/<role_1_name>'
    - 'arn:aws:iam::<account_2_id>:role/<role_2_name>'
Remarque : la définition de rôles IAM au niveau du service remplace la configuration globale des rôles IAM sur AWS.