Analyse de l’erreur
Ce log montre une erreur de gestion d’exception lors de l’exécution d’une tâche ArmoniK. Voici l’explication détaillée :
Séquence des événements
1. Cancellation initiale
System.OperationCanceledException: The operation was canceled.
> at WorkerStreamHandler.StartTaskProcessing(...)
- Une tâche en cours d’exécution a été annulée (probablement par KEDA comme discuté précédemment).
2. Tentative de gestion d’erreur
at TaskHandler.HandleErrorInternalAsync(Exception e, TaskData taskData, Boolean resubmit, CancellationToken cancellationToken)
at TaskHandler.HandleErrorResubmitAsync(Exception e, TaskData taskData, CancellationToken cancellationToken)
- ArmoniK tente de gérer l’erreur et de resoumettre la tâche.
- Le système essaie de récupérer gracieusement de la cancellation.
3. Échec de la récupération
at TaskHandler.ExecuteTask() in /src/Common/src/Pollster/TaskHandler.cs:line 1041
at RunningTaskProcessor.ExecuteAsync(...)- La tentative de récupération échoue également.
- L’erreur remonte jusqu’au RunningTaskProcessor.
Mécanisme de retry
"NbError"=1,
"MaxError"=5,
"Scope":["Exception #1/5]Causes probables
1. Timing de cancellation
StatusCode="Cancelled", Detail="Call canceled by the client."- La cancellation arrive pendant le traitement de la tâche.
- Le worker n’a pas eu le temps de terminer proprement.
2. Problème de ressources
- Pod en cours de terminaison (KEDA scale-down).
- Timeout réseau ou de base de données.
- Graceful shutdown mal géré.
3. Problème de configuration KEDA
# Configuration problématique
spec:
cooldownPeriod: 30 # Trop court
pollingInterval: 10 # Trop fréquent