From 7cee7dca6457fed3313668a6d821be7b47019aef Mon Sep 17 00:00:00 2001 From: Ray Myers Date: Mon, 9 Jun 2025 16:47:40 -0500 Subject: [PATCH] chore - log size of large events (#9024) --- openhands/events/stream.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/openhands/events/stream.py b/openhands/events/stream.py index 31ec2563fa..177ab55282 100644 --- a/openhands/events/stream.py +++ b/openhands/events/stream.py @@ -186,9 +186,18 @@ class EventStream(EventStore): if event.id is not None: # Write the event to the store - this can take some time - self.file_store.write( - self._get_filename_for_id(event.id, self.user_id), json.dumps(data) - ) + event_json = json.dumps(data) + filename = self._get_filename_for_id(event.id, self.user_id) + if len(event_json) > 1_000_000: # Roughly 1MB in bytes, ignoring encoding + logger.warning( + f'Saving event JSON over 1MB: {len(event_json):,} bytes, filename: {filename}', + extra={ + 'user_id': self.user_id, + 'session_id': self.sid, + 'size': len(event_json), + }, + ) + self.file_store.write(filename, event_json) # Store the cache page last - if it is not present during reads then it will simply be bypassed. self._store_cache_page(current_write_page)