argoproj / argoproj/notifications-engine

Weird behavior of notification-service

Open
#167 2 comments 3 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
334
Forks
217
PR merge metrics
No merged PRs in 30d

Description

Describe the bug
Our notification-controller continuously sends errors :
`" level=error msg="failed to execute when condition: cannot fetch phase from (1:27)\n | app.status.operationState.phase in ['Running']\n | ..........................^"`

`" level=error msg="failed to execute oncePer condition: cannot fetch revision from (1:38)\n | app.status.operationState.syncResult.revision\n | .....................................^"`
Its throwing this kind of errors for almost all triggers

From argo ui i don't see any sync problems also the notification-service pods seems working as the should so .
Can anyone explain why the errors are send?

> Triggers section:
> triggers:
> trigger.on-deployed: |
> - description: Application is synced and healthy. Triggered once per commit.
> oncePer: app.status.operationState.syncResult.revision
> send:
> - app-deployed
> when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status == 'Healthy'
> trigger.on-health-degraded: |
> - description: Application has degraded
> send:
> - app-health-degraded
> when: app.status.health.status == 'Degraded'
> trigger.on-sync-failed: |
> - description: Application syncing has failed
> send:
> - app-sync-failed
> when: app.status.operationState.phase in ['Error', 'Failed']
> trigger.on-sync-running: |
> - description: Application is being synced
> oncePer: app.status.sync.revision
> send:
> - app-sync-running
> when: app.status.operationState.phase in ['Running']
> trigger.on-sync-status-unknown: |
> - description: Application status is 'Unknown'
> send:
> - app-sync-status-unknown
> when: app.status.sync.status == 'Unknown'
> trigger.on-sync-succeeded: |
> - description: Application syncing has succeeded
> send:
> - app-sync-succeeded
> when: app.status.operationState.phase in ['Succeeded']

We have following set up:
Argo: 2.6.4
Argo helm chart: 5.26.0

Istio: 1.14
Private GKE cluster: 1.23

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the notification-controller logs and the supplied trigger definitions, focusing on the nil paths reported for phase and revision. Reproduce the behavior with the listed Argo, Helm, Istio, and GKE versions, then determine whether the errors come from trigger evaluation or configuration. Done means the cause and required change are documented and the errors no longer occur incorrectly.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, helm, kubernetes
Domain
backend, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.