Skip to content

Log explorer: split filters into separate simple and advanced components

What does this MR do?

Logs Filtered search (including time ranges) will only be available when the environment can support it with elasticsearch. When elasticsearch is enabled, the user will be able to filter by date, search text, and an aggregate of all pods.

This means the UI has to support 2 "modes", this MR makes this separation explicit, by having different 2 filters components, these components have access to the store so they can directly change filters.

UX changes

Moving forward the "Advanced" mode will be implemented by having a filtered search, while the "simple" mode will not change anymore.

The simple mode is "simplified" by removing the permanently disabled elements altogether as it doesn't make sense clutter the UX with them.

Technical Info

While this MR started as a pure refactor, I found I could remove some HTML and CSS which involved some layout changes, which are hope are for the better.

Old forms (form-group) layouts based on columns are removed in favor of using display: flex;, so that the UI can accept different "modes" more flexibly. This has the added benefit of improving the support of mobiles and tables.

Screenshots

Before

device Desktop Tablet/mobile
Advanced (es is available) image image
Simple (es is not available) image image

After

device Desktop Tablet/mobile
Advanced (es is available) image image
Simple (es is not available) image image

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team

Closes #207912 (closed)

Edited by 🤖 GitLab Bot 🤖

Merge request reports