Après avoir activé notre monitoring pour AWS Lambda, vous devez occasionnellement mettre à jour notre fonction Lambda utilisée pour signaler les données log AWS : newrelic-log-ingestion
.
Il y a deux façons de procéder :
- Mise à jour via CLI: utilisez ceci si vous avez activé notre monitoring Lambda à l'aide de notre outil CLI.
- Mise à jour via l'application AWS Serverless référentiel: utilisez ceci si vous avez activé à l'aide de la procédure manuelle.
Important
Ces procédures de mise à jour s'appliquent à notre monitoring serveur sans serveur pour AWS Lambda, et non à notre monitoring deinfrastructure pour AWS Lambda l'intégration.
Mettre à jour notre intégration Lambda via CLI
Cette section décrit comment mettre à jour si votre monitoring Lambda a été activé à l'aide de notre outil CLI recommandé.
Assurez-vous que vous disposez de la dernière version de la CLI :
bash$pip install --upgrade newrelic-lambda-cliPour chaque région dans laquelle vous avez installé la fonction
newrelic-log-ingestion
, exécutez la commande suivante, en remplaçantYOUR_REGION
par votre identifiant de région (par exemple,us-west-2
).bash$newrelic-lambda integrations update \>--aws-region YOUR_REGIONSi vous n'avez pas activé nos logs, vous devrez également mettre à jour vos CloudWatch log filtres d'abonnement Amazon avec la commande suivante :
bash$newrelic-lambda subscriptions install \>--function installed \>--aws-region YOUR_REGION
Mettre à jour les couches via CLI
Cette section décrit comment mettre à jour la couche de votre fonction si vous l'avez installée avec notre outil CLI.
Assurez-vous que vous disposez de la dernière version de la CLI :
bash$pip install --upgrade newrelic-lambda-cliTransmettez l'indicateur
--upgrade
à la commande d'installation :bash$newrelic-lambda layers install \>--function installed \>--nr-account-id NR_ACCOUNT_ID \>--upgrade
Mettre à jour une installation manuelle du référentiel d'application Serverless
Si vous avez installé manuellement la fonction d'ingestion à partir du référentiel d'applications AWS Serverless (et n'avez pas utilisé l'interface de ligne de commande), effectuez la mise à jour à l'aide de cette procédure :
Exécutez ce qui suit en remplaçant
YOUR_REGION
par votre région (par exemple,us-west-2
).bash$aws serverlessrepo create-cloud-formation-change-set \>--application-id arn:aws:serverlessrepo:us-east-1:463657938898:applications/NewRelic-log-ingestion \>--stack-name NewRelic-log-ingestion \>--capabilities CAPABILITY_RESOURCE_POLICY \>--parameter-overrides Name=NRLicenseKey,Value=<YOUR_NR_LICENSE_KEY> \>--region <YOUR_REGION>Cette commande génère plusieurs champs, dont le
ChangeSetId
: un ARN pour l'ensemble de modifications que vous venez de créer. Copiez cet ARN.Utilisez l'ARN dans cette commande, qui exécute l'ensemble de modifications :
bash$aws cloudformation execute-change-set --change-set-name YOUR_CHANGE_SET_ARN
Activation de la gestion des log
Si vous n'avez pas actuellement activé de New Relic, mais que vous souhaitez :
Assurez-vous que vous disposez de la dernière version de la CLI :
bash$pip install --upgrade newrelic-lambda-cliPour chaque région dans laquelle vous avez installé la fonction
newrelic-log-ingestion
, exécutez la commande suivante, en remplaçantYOUR_REGION
par votre région (par exemple,us-west-2
).bash$newrelic-lambda integrations update \>--enable-logs \>--aws-region YOUR_REGIONEnsuite, effectuez l’une des opérations suivantes :
Mettez à jour vos CloudWatch log filtres d’abonnement Amazon pour chaque région avec la commande suivante :
bash$newrelic-lambda subscriptions install \>--function installed \>--filter-pattern "" \>--aws-region YOUR_REGIONOu, vous pouvez envoyer les logs des fonctions directement à New Relic, en contournant CloudWatch et le
newrelic-log-ingestion
Lambda. Pour ce faire, définissez la variable d’environnementNEW_RELIC_EXTENSION_SEND_FUNCTION_LOGS=true
dans la configuration de votre fonction Lambda.Après cela, assurez-vous de supprimer tout abonnement New Relic Logs existant pour cette fonction à l'aide de cette commande :
bash$newrelic-lambda subscriptions uninstall \>--function FUNCTION_NAME \>--aws-region YOUR_REGIONSi l'abonnement log est présent pendant que l'extension envoie les logs, les logs seront envoyés deux fois, ce qui entraînera des enregistrements log en double dans New Relic.
En option, si vous souhaitez éviter les frais d'Amazon pour l'ingestion de log CloudWatch , vous pouvez également modifier le rôle d'exécution de votre fonction afin qu'elle n'accorde pas les autorisations du log CloudWatch . Cela empêchera votre fonction d'envoyer les logs à CloudWatch.
Prudence
Les frais d’ingestion des logs CloudWatch peuvent être considérables, mais cette étape doit être prise avec prudence. Assurez-vous que votre intégration d’ingestion de logs New Relic fonctionne bien et répond à vos besoins avant de désactiver les logs CloudWatch .