-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Event/alarm framework HLD update. Integrate with event producer framework. #1409
Conversation
Add sonic-event-community.yang changes.
@zhangyanzhao Please assign reviewers. |
@kwangsuk, Please review. |
@renukamanavalan Please review update to the existing event framework HLD. |
} else { | ||
LOG_EVENT(TEMPERATURE_EXCEEDED, sensor_name_p, CLEAR_ALARM, "Temperature for the sensor %s is %d degrees ", sensor_name_p, current_temp); | ||
} | ||
``` | ||
#### 3.1.1.2 Development Process |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like this is introducing differences in the way that an application/component needs to implement their events and alarms.
If this is the case, we should clearly outline what these changes are, ideally prepare an example, and raise this in the Community during one of the Tuesday calls.
If you agree, we can work with @zhangyanzhao to schedule something.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Resolved.
To add some more background, the original event/alarm framework HLD was raised as #1064 and then approved and merged. #954 for Event Producer was merged and its code PRs were merged, so the events/alarm framework HLD needed to be updated, hence this PR. |
event-id and event name used interchangeably.
@rajendra-dendukuri pls help review the HLD |
@@ -175,14 +167,11 @@ This modified file can then be uploaded to the device to /etc/evprofile/. | |||
Operator can select any of these custom event profiles to change default properties of events. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Event profiling to change properties lie severity etc. would be managed by controllers as per their OAM policy. Hence, can we remove the support to change the profile settings?
Reviewed in community on 9/21/2023 |
community review recording https://zoom.us/rec/share/P44xWGduoa6Q2Q6D8lNiWyoQlWwlyx5NB2TzgT6QjOaL5ky9QdbwYvAA8tk-iNEh.XPqm29vRYgCiDMz8 |
@zhangyanzhao @renukamanavalan can we merge this HLD now? |
@@ -102,7 +94,7 @@ Such a change has an important metric called *severity* to indicate how critical | |||
The set of alarms and their severities are an indication to health of various applications of the system and System LED can be deduced from alarms. | |||
An acknowledged alarm means that operator is aware of the condition so, acknowledged alarm will be taken out of consideration. | |||
|
|||
Both events and alarms get recorded in a new DB called EVENT DB in a new redis instance. | |||
Both events and alarms get recorded in redis DB. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
which redisDB? could you update if its some existing redisDB or a new one?
Also, as of now, when applications (processes/daemons) publish their event(s)/alarm(s), they do NOT get stored in any redis (or persistent DB) - right? In that case, are they stored by eventD framework/container in memory? no EVENT DB as of now?
| 5.2.4 | Openconfig interface to acknowledge an alarm. | | | ||
| 6 | CLI commands | | | ||
| 6.1 | show alarm [ detail \| summary \| severity \| timestamp <from> <to> \| recent <5min\|1hr\|1day> \| sequence-number <from> <to> \| all] | | | ||
| 6.2 | show event [ detail \| summary \| severity \| timestamp <from> <to> \| recent <5min\|1hr\|1day> \| sequence-number <from> <to>] | | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In 202305 present codebase, do not see support for these CLIs (i.e. show alarm, show event).
[1] In their absence, how does one check eventD's cache-services contents? as to what events, alarms are received and stored in eventD's cache-services?
Is it there as part of some changeset not merged yet? or not there at all?
#1064 has some unmerged PRs. Does this support reside there?
If so, what's the plan to commit, merge these pending PRs to sonic mainstream repositories?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The present codebase does not have CLI support. It supports event publish via telemetry streaming.
The implementation for doc/event-alarm-framework/event-alarm-framework.md, is not merged.
#1064 unmerged PRs have the support for CLIs.
The current plan is to first get this PR merged. @shyam77git Please review and approve this PR.
Then rework changes in #1064 PRs to support these design updates and submit to community for coming release.
merge this with reviewers approval |
@bhaveshdell can you please help to update the code PRs for this HLD by referring to #806 ? So that we can track this feature completeness clearly. Thanks. |
Hi @bhaveshdell |
@stephenxs Yes, we'll add code PRs to this HLD. |
Thanks @venkatmahalingam . |
@bhaveshdell |
Copy the code PRs from #761 Corresponding Coding PRs: |
@venkatmahalingam @bhaveshdell can you please check if above code PRs are accurate or others should be added? I copied them from #761. Code PRs should be included in HLD per community agreement. Thanks. |
Why I did it This PR contains code changes for providing extension to the Event Framework as specified in the sonic-net/SONiC#1409 How I did it Followed design specified in sonic-net/SONiC#1409. Add new tables for events and alarms.
one code PR is still open, move to backlog |
Why I did it This PR contains code changes for providing extension to the Event Framework as specified in the sonic-net/SONiC#1409 How I did it Followed design specified in sonic-net/SONiC#1409. Add new tables for events and alarms.
The event/alarm framework HLD was reviewed and committed earlier.
With the availability of event producer framework, the design is updated to provide DB/persistent support for event history.
Also gnmi/rest openconfig interface for get operations and gnmi subscription.
Code PRs
sonic-net/sonic-swss-common#852
sonic-net/sonic-buildimage#17949