AWS Lambda detection never matches because the environment variable name has a trailing space
Les mainteneurs répondent en général sous 6 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 76/100
Piste de recherche
Commencez dans src/Exceptionless/Extensions/ExceptionlessConfigurationExtensions.cs, à ReadFromEnvironmentalVariables(), et examinez la recherche GetEnvironmentalVariable. Supprimez l’espace final du nom de la variable AWS Lambda et ajoutez des tests pour les variables AWS et Azure Functions. Exécutez les tests de configuration concernés ; la tâche est terminée lorsque la variable AWS active ProcessQueueOnCompletedRequest par défaut, comme le fait Azure.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
In Exceptionless 6.2.0 (core Exceptionless package), ReadFromEnvironmentalVariables() is meant to turn on ProcessQueueOnCompletedRequest automatically when running in AWS Lambda, but it looks up "AWS_LAMBDA_FUNCTION_NAME " (with a trailing space). No such variable exists, so the Lambda check never fires.
Where
- https://github.com/exceptionless/Exceptionless.Net/blob/5792f00d175f94a35fe0559c8e9999234a8163be/src/Exceptionless/Extensions/ExceptionlessConfigurationExtensions.cs#L496-L506 (the check is on line 500)
- https://github.com/exceptionless/Exceptionless.Net/blob/5792f00d175f94a35fe0559c8e9999234a8163be/src/Exceptionless/Extensions/ExceptionlessConfigurationExtensions.cs#L518-L535 (
GetEnvironmentalVariabledoes an exact, untrimmed key lookup)
What happens
On AWS Lambda, AWS_LAMBDA_FUNCTION_NAME is set, but the lookup is for AWS_LAMBDA_FUNCTION_NAME , so it returns null. ProcessQueueOnCompletedRequest stays false unless the app sets it explicitly, and the ASP.NET Core middleware does not flush the queue at the end of each request. Lambda freezes the process after the response is sent, so queued events can sit unsent until a later invocation, or be lost when the environment is recycled (see #215 for the original report of this behavior). The Azure Functions check on the next line (FUNCTIONS_WORKER_RUNTIME) works because it has no trailing space.
Expected
When AWS_LAMBDA_FUNCTION_NAME is set and Exceptionless:ProcessQueueOnCompletedRequest is not configured, ProcessQueueOnCompletedRequest is set to true, the same as on Azure Functions.
Steps to reproduce
- Set the environment variable
AWS_LAMBDA_FUNCTION_NAME=testand do not setExceptionless__ProcessQueueOnCompletedRequest. - Create a client and call
client.Configuration.ReadFromEnvironmentalVariables()(orclient.Startup()). client.Configuration.ProcessQueueOnCompletedRequestisfalse. Repeat withFUNCTIONS_WORKER_RUNTIME=dotnetand it istrue.
Suggested fix
Remove the trailing space: GetEnvironmentalVariable("AWS_LAMBDA_FUNCTION_NAME"), and add a test that covers both serverless variables.
- Langage dominant
- C#
- Étoiles
- 573
- Forks
- 143
- Merge moyen
- 5 j 9 h
- PR mergées (30 j)
- 1
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de exceptionless/Exceptionless.Net
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
exceptionless/Exceptionless.Net#391 ·
Les mainteneurs répondent en général sous 6 jours
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
exceptionless/Exceptionless.Net#390 ·
Les mainteneurs répondent en général sous 6 jours
-
bug
Difficulté 1/5 1-3 heures Accessibilité débutants 88/100
exceptionless/Exceptionless.Net#387 ·
Les mainteneurs répondent en général sous 6 jours
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 35/100
exceptionless/Exceptionless.Net#389 ·
Les mainteneurs répondent en général sous 6 jours
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
exceptionless/Exceptionless.Net#388 ·
Les mainteneurs répondent en général sous 6 jours
Toutes les issues de exceptionless/Exceptionless.Net
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Street address filter matches across line breaks and reads "Dr." in a greeting as a street suffixOuvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
philterd/phileas-dotnet#185 ·
-
[Bug] Dashboard renders attachment links that resolve to 404 when the FILES binding is absentOuvertebug 優先: 低
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100