mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-04 16:09:05 +00:00
### **PR Type** Enhancement ___ ### **Description** - Add `query_type` param for PromQL range/instant - Support streaming in `useStreamingSearch` & backend - Revamp query mode selector UI: SQL, builder, custom, PromQL - Enhance `convertPromQLData`: instant vectors & styling ___ ### Diagram Walkthrough ```mermaid flowchart LR UI["Query mode selector UI"] -- "sets query_type" --> Loader["Panel data loader"] Loader -- "adds query_type" --> Stream["Streaming search URL builder"] Stream -- "routes instant/range" --> Backend["HTTP handler"] Backend -- "streams or search" --> Converter["PromQL data converter"] Converter -- "apply transformations" --> Chart["Chart rendering"] ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>8 files</summary><table> <tr> <td><strong>usePanelDataLoader.ts</strong><dd><code>Add `query_type` field to PromQL payload</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+1/-0</a> </td> </tr> <tr> <td><strong>useDashboardPanel.ts</strong><dd><code>Toggle off VRL and skip resets in PromQL mode</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-fbba1700750053b9eaf38ddd30dab84531bc44131c795ebb713811e4930cd7cb">+15/-0</a> </td> </tr> <tr> <td><strong>useStreamingSearch.ts</strong><dd><code>Route PromQL streaming URL by query_type</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-8fce3e25a161cd458e734bd9b1f98aadefe3482da7b6529a5b1f4fa20ec115e2">+15/-2</a> </td> </tr> <tr> <td><strong>convertPromQLData.ts</strong><dd><code>Support instant vectors and series styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-68d70ba6c622911d48cdb567940dc404a4a6468b86c6d24fb54e5f1d8aa5ca2a">+69/-10</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add `use_streaming` flag to RequestQuery</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-82a5de6222f38aad3e2cf41c251400cec789c6ab9fbb0d92cbb5cbaabb21c030">+2/-0</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Route to streaming or standard search</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-0ad5729a1fbce00ff53076728c51822400c13af9918e1d8554f41be56d060fa0">+10/-2</a> </td> </tr> <tr> <td><strong>QueryTypeSelector.vue</strong><dd><code>Revamp query mode buttons: SQL, PromQL, builder, custom</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-0dfd7075714453289e8f65d7f085ff9314148c02ca64fb591d0b8d8cbe1ef0b3">+212/-158</a></td> </tr> <tr> <td><strong>PromQLBuilderOptions.vue</strong><dd><code>Add query_type select (range/instant) in builder</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-0118a096d9bd174a3fbe091f62af6f94d6fc6f51c10ad00a1c8660bd5a14f2e9">+62/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Documentation</strong></td><td><details><summary>11 files</summary><table> <tr> <td><strong>de.json</strong><dd><code>Add SQL, builder, custom translation keys</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-78f24ecb2dbcfc38fdf3ec22b2559a5b40d236ea689d1c55f5d3e87168310264">+5/-1</a> </td> </tr> <tr> <td><strong>en.json</strong><dd><code>Update labels for SQL, builder, custom modes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-892aa3d75ab6e129ef9116aa21bec1b9a15ba69ce5366d2a19128078c690d824">+5/-3</a> </td> </tr> <tr> <td><strong>es.json</strong><dd><code>Add new translation keys for query modes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-ac2a2167b8b973e3f776f9fe3b43bef4576470d8ad33f3d7cfaff6edff0e5778">+5/-1</a> </td> </tr> <tr> <td><strong>fr.json</strong><dd><code>Update locale with SQL and builder keys</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-db80e762b88ddf183820c050cdc6b215e6b02b365b5e73f5152af46b0d26f1a2">+5/-1</a> </td> </tr> <tr> <td><strong>it.json</strong><dd><code>Add custom and builder translations</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-2de78074a5f887afddce60d694ead9322e6ab223eb70251c13819f3028bdc70d">+5/-1</a> </td> </tr> <tr> <td><strong>ja.json</strong><dd><code>Include SQL/builder/custom in Japanese locale</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-092e49c5f9fbc1b539ab9c2866d108d0ce1d314022b4c294eb4611b285e7bbd3">+5/-1</a> </td> </tr> <tr> <td><strong>ko.json</strong><dd><code>Add SQL and builder keys in Korean</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-50e27ca1b4825a5026f3a251bfcf79c97cab07cfade2ebd512d332453d707c48">+5/-1</a> </td> </tr> <tr> <td><strong>nl.json</strong><dd><code>Update Dutch locale for query modes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-a1706021687ae5d8a1c006c49eab3946174fecd895f9b70a89c2e76d97250906">+5/-1</a> </td> </tr> <tr> <td><strong>pt.json</strong><dd><code>Add Portuguese labels for SQL and builder</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-38e804f64cb5e0e451849fc84e9b46e53c954a4a4263d51c18665ad45f4b4815">+5/-1</a> </td> </tr> <tr> <td><strong>tr.json</strong><dd><code>Update Turkish locale with new keys</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-6f0f131e9e2591480c4c5d1eaffc72d02dc31cbd8d3f90d8f012f08cabac8818">+5/-1</a> </td> </tr> <tr> <td><strong>zh.json</strong><dd><code>Add SQL/custom/builder translations in Chinese</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9749/files#diff-8818055db58f83230aeea4ebfd4cec31d924e8c47b6f91298e356959ab25339e">+5/-1</a> </td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ --------- Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
zinc-observe-ui-automation
Playwright UI Testing
Installation
npm install
Running Tests
Using Playwright Runner UI (Recommended)
cd playwright-runner
npm start
Then open http://localhost:3000 to access the test runner interface.
Using Command Line
# Run all tests
npx playwright test
# Run specific test by tag
npx playwright test -g @alertsImportExport
# Run in headed mode
npx playwright test --headed
# Run specific test file
npx playwright test Alerts/alerts-import.spec.js
Environment Configuration
Tests can be configured using:
- Playwright Runner UI - Set environment variables through the web interface
- Environment Variables - Set variables in terminal or .env file