Skip to content

Update the log listener to publish v2 events as well #84

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

t-persson
Copy link
Collaborator

Applicable Issues

Description of the Change

This is a backward compatibility change so that we may run SSE v1 and v2 at the same time, allowing us to test v2 more comprehensively

Alternate Designs

Possible Drawbacks

Sign-off

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.

Signed-off-by: Tobias Persson [email protected]

This is a backward compatibility change so that we may run SSE v1
and v2 at the same time, allowing us to test v2 more comprehensively
@t-persson t-persson requested a review from a team as a code owner March 6, 2025 14:33
@t-persson t-persson requested review from fredjn and andmat900 and removed request for a team March 6, 2025 14:33
try:
self.v2client.publish(self.identifier, parse(event))
except: # pylint:disable=bare-except
# A catch-all exception here because if v2 publish fails, this
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If v2 events suddenly stop getting published, we won't be able to see why. Is this correct?

Is there a risk that this function will be called endlessly?

Copy link
Collaborator Author

@t-persson t-persson Mar 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If v2 events suddenly stop getting published, we won't be able to see why. Is this correct?

I have added traceback.print_exc() locally that will be pushed, but no production release will be made using SSEv2 with the log listener. We'll still use v1 in production until all services publish v2.

Is there a risk that this function will be called endlessly?

Not anymore, since I added the bare except.

@@ -69,7 +76,13 @@ def new_event(self, event: dict, _: Optional[str] = None) -> None:
"""Get a new event from the internal RabbitMQ bus and write it to file."""
if event.get("event") is None:
event = {"event": "message", "data": event}
self.__write(**event)
self.__write(event.get("event", ""), event.get("data", ""))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. If v2 event publishing fails, this identifier() function will be called again. Then __write() will be executed twice?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If v2 event publishing fails this function will not be called again since we catch all exceptions when publishing to v2.

@t-persson t-persson requested a review from andmat900 March 10, 2025 13:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants