-
-
Notifications
You must be signed in to change notification settings - Fork 150
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
WIP: Add replay logging mechanism #802
base: main
Are you sure you want to change the base?
Conversation
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.
Thanks for putting this together @KIRA009 ! It's probably the screenshots that are taking up most of the disk space, right? I think it should be manageable for now.
logs = sa.orm.relationship("ReplayLog", back_populates="replay") | ||
|
||
|
||
class ReplayLog(db.Base): |
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.
What do you think about renaming "Replay" to "Execution" and "ReplayLog" to "ExecutionLog"?
@@ -181,6 +181,26 @@ def __init__(self, **kwargs: dict) -> None: | |||
for key, value in properties.items(): | |||
setattr(self, key, value) | |||
|
|||
def to_log_dict(self) -> dict[str, Any]: |
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.
Why not just use asdict()
?
Edit: if the goal is to remove unnecessary properties, what do you think about overriding asdict, calling the super method, then removing the unnecessary keys?
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.
Yes that makes more sense
@abrichr I have added the segmentation logging for visual replay strategy |
Excellent! Can you please share screenshots? 🙏 |
newmovie.mov |
Thank you @KIRA009. Those images don't look right. If you set |
@abrichr I see images like these, the replay stops arbitrarily for me though, with the exception I am not sure if its because my recording is not great, or my prompt is not good, but this should log any segmentation returned by |
This is tracked here: #658
Those images you pasted are indeed the image I was referring to in my previous comment. However, I don't see them in the video you shared. |
@abrichr here's the video after merging the fix Screen.Recording.2024-07-25.at.11.52.59.PM.mov |
@KIRA009 it looks like the screenshot is blank. Any idea why that is? Which application was open when the screenshot was taken? |
@abrichr it was vs code I believe. You could try this branch on a recording you have and check the results |
What kind of change does this PR introduce?
This PR addresses #757
Summary
It adds logging to database during replay that will then be displayed on the dashboard. The database bloats very quickly because the logs include images, and python objects
Checklist
How can your code be run and tested?
Other information