Skip to content

[OGUI-746] url parameter direct livemode - #2708

Draft
Houwie7000 wants to merge 33 commits into
devfrom
improvement/Houwie7000/OGUI-746/url-parameter-direct-livemode
Draft

Houwie7000 wants to merge 33 commits into
devfrom
improvement/Houwie7000/OGUI-746/url-parameter-direct-livemode

Conversation

@Houwie7000

@Houwie7000 Houwie7000 commented Jan 6, 2025 •

Copy link
Copy Markdown
Contributor

I have JIRA issue created

  • branch and/or PR name(s) includes JIRA ID
  • issue has "Fix version" assigned
  • issue "Status" is set to "In review"
  • PR labels are selected
  • FLP integration tests were ran successful

Ticket:

Accept a live URL parameter. When it is set to true, attempt to start live mode as soon as its dependencies have loaded and allow.

Needed so the AliECS GUI can link from a running environment to InfoLogger GUI in live mode with autoscroll (OGUI-722).

Code:

Previously, the Query/Live mode switching and their button styling were handled in the commandLogs view by toggleButtonStates, which stored the button state in module-level variables. Starting live mode from the URL meant interacting with the view to update these variables, which prom[ted a refactor to extract logic from the view to a model.

  • Btn styling is derived from a lookup table based on activeMode.
  • Query/Live button click logic is moved into the Log model.
  • If parseLocation detects there is the live parameter it checks the promises for live mode's dependencies (now tracked) and once available moves to live mode. If the dependencies are not, it shows a danger notification.
  • TODO ADD activeMode changes and robustness fixes.

Reviewer:

The reviewer can test using this URL (remove runNumber to match more logs, but this is the specific use case the ticket mentions):

http://localhost:8080/?q=%7B%22timestamp%22%3A%7B%22since%22%3A%22-1h%22%7D%2C%22run%22%3A%7B%22match%22%3A%22248025%22%7D%2C%22severity%22%3A%7B%22in%22%3A%22I%20W%20E%20F%22%7D%7D&live=true

Note:

  • Check by switching between Query, Live and pausing/resuming Live modes, that the button styling matches the previous ILG behaviour.
  • When live mode was specifically specified in the URL and it happens that the ILG server is unavailable the page should raise a notification.
  • Your own testing ideas.

@Houwie7000
Houwie7000 requested a review from graduta as a code owner January 6, 2025 09:28
@Houwie7000 Houwie7000 changed the title Improvement/houwie7000/og UI 746/url parameter direct livemode [OGUI-746] url parameter direct livemode Jan 6, 2025
@isaachilly
isaachilly self-requested a review as a code owner September 21, 2026 08:11
Comment thread InfoLogger/public/Model.js Fixed
I found too much operating logic was occurring in the view so I have refactored the query/live button behaviour so that mode switching is handled by the model instead.

This centralises the logic again and simplifies the view.
@isaachilly isaachilly self-assigned this Sep 21, 2026
@isaachilly
isaachilly marked this pull request as draft September 21, 2026 16:32
Await the needed information/processes calls and then start live mode if it was requested. Do not keep polling or manage a timeout etc.
Wait for the ws to either authenticate or close before auto-starting live mode, and skip the live transition if the connection drops first.

Move `goLive()` error handling into `Log` so live mode entry reports failures consistently from both URL startup and UI toggles.
Centralise live/query availability logic in the log model.

Update tab titles through mode changes.

keep URL-driven live mode from starting when profile or invalid query params are used. Also adjust the live-mode test filter to match the expected enabled state.
Added browser tab title test for Query mode.

Adding the browser tab test brought to light that runQueryWithMocks did not fully mock the real endpoint and if confirmReturn:true would error and leave queryResult as failure which broke the subsequent test. Mock data structure now updated to be inline with real endpoint.
Add a helper to fetch live-mode UI/model state in one page evaluation call.

Also add an `after` hook to call `window.model.log.liveStop()` so live mode is always stopped after the suite.
Call `liveStart()` directly when entering live mode, and keep auto-scroll state updates quiet during live start/stop so mode changes no longer trigger extra notifications.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants