Skip to content
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

Enable producing to event bus via settings #210

Closed
robrap opened this issue May 1, 2023 · 6 comments
Closed

Enable producing to event bus via settings #210

robrap opened this issue May 1, 2023 · 6 comments
Assignees
Labels
event-bus Work related to the Event Bus.

Comments

@robrap
Copy link
Contributor

robrap commented May 1, 2023

At this time, producing a signal to the event bus requires code. See the event bus how-to for details.

This is problematic because:

  1. Nearly all openedx-events signals should be able to be produced to the event bus, and different operators may have different needs.
  2. Related, for named releases, operators should be able to produce new events without changing code or waiting for the next named release.

This issue proposes to make the switch to configuring this via settings, rather than code.

Some thoughts/questions about the settings:

  1. It should be possible to toggle on/off an event as we do in code. I imagine that we'd want to be able to do this without having to add/delete all config for a topic, and could instead set a flag.
  2. Does the setting need to support producing the same event to multiple topics? Maybe not? I can't remember where we landed for migrations, and maybe we could add this later while keeping a simpler one-topic setup by default?
  3. The settings should support multiple events going to the same topic. See this lifecycle event issue for details on where we landed on this: [Discovery] Handle multiple lifecycle events on single event bus topic #78.
  4. It would be great if services could include default settings for signals that are expected to be produced. These may be toggled off, or incomplete, but could be used as documentation of what signals should be configured. (Or, someone can provide an alternative solution to this particular issue.)
  5. This may be best covered in an entirely separate ticket, but it would be nice if we could toggle some sort of audit that would help estimate the data that would be sent to the event bus if a event were sent there. This could be used for making cost estimates for existing events.
  6. Reminder: replace existing event producing code with this config when it is available.
@robrap robrap added the event-bus Work related to the Event Bus. label May 1, 2023
@bmtcril bmtcril assigned bmtcril and unassigned bmtcril May 19, 2023
@bmtcril
Copy link
Contributor

bmtcril commented May 19, 2023

@navinkarkera is going to take this on next and write an ADR up front for the proposed solution. I can't assign it to him, though. :)

@robrap
Copy link
Contributor Author

robrap commented Oct 5, 2023

@rgraber: Adding a reminder for https://github.com/openedx/openedx-events/pull/272/files#r1347321249, which is to not have the configs reading fail hard for a single part that is misconfigured.

  • Allow partial loading of config (with proper error handling to hopefully catch what is broken).

Questions:

  • Do we want to alert on this?
  • Will we still raise an error (at the end)? Or rely on logs?

@rgraber
Copy link
Contributor

rgraber commented Oct 18, 2023

I'm going to create a separate ticket to deal with that. Seems like it requires more discussion.

@rgraber
Copy link
Contributor

rgraber commented Oct 18, 2023

Closing this and moving the other question to #280

@rgraber rgraber closed this as completed Oct 18, 2023
@robrap
Copy link
Contributor Author

robrap commented Oct 18, 2023

I'm going to create a separate ticket to deal with that. Seems like it requires more discussion.

@rgraber: Does "that" refer to #210 (comment)?

@rgraber
Copy link
Contributor

rgraber commented Oct 18, 2023

I'm going to create a separate ticket to deal with that. Seems like it requires more discussion.

@rgraber: Does "that" refer to #210 (comment)?

Yes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
event-bus Work related to the Event Bus.
Projects
None yet
Development

No branches or pull requests

3 participants