fix(ui): prevent log viewer crash on malformed stream packets issue #26023 #26226
+13
−2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
##Description
Fixes [ISSUE #26023 ]
The log stream reader in
ApplicationsServiceblindly parses JSON chunks and accesses.result. If a malformed packet (e.g.,undefinedor null result) arrives—which can happen during backend race conditions when merging streams from multiple replicas—the UI crashes with aTypeError.This PR adds a defensive check to ensuring the parsed result is valid before passing it to the UI component.
##Changes
getContainerLogsinapplications-service.tsto include atry...catchblock around JSON parsing.filterto discardnullorundefinedentries before they reach the subscriber.console.errorlogging for parsing failures to aid in future debugging.##Verification
undefinedpackets into the log stream.##Steps I used to re-create the issue:
entriescode inui/src/app/shared/services/applications-service.ts~ line 321 to add random errors:Checklist: