mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-04 08:09:27 +00:00
c8bdada9da9db92ee2e71aa24fb9fcac979f2fb1
1630
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
3c3a8d178a |
fix: dashboard cancel api on unmounted (#7405)
### **PR Type** Bug fix, Enhancement ___ ### **Description** - Extend cancelQuery with showNotification parameter - Guard notifications by optional flag - Inject cancelQuery into panel data loader cleanup - Pass false to suppress notifications in loader ___ ### **Changes diagram** ```mermaid flowchart LR A["usePanelDataLoader"] -- "initializes" --> B["useCancelQuery"] B -- "searchRequestTraceIds" --> C["traceIdRef"] B -- "cancelQuery(showNotification)" --> D["delete_running_queries"] D -- "success" --> E["showPositiveNotification"] D -- "failure" --> F["showErrorNotification"] ``` ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>useCancelQuery.ts</strong><dd><code>Support optional notifications in cancelQuery</code> </dd></summary> <hr> web/src/composables/dashboard/useCancelQuery.ts <li>Added <code>showNotification</code> parameter to <code>cancelQuery</code><br> <li> Wrapped notifications under the new flag<br> <li> Updated JSDoc for <code>cancelQuery</code> parameter </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7405/files#diff-c8ecf4052412642d3a64203b2b5cdc2d35f2e2260b185b7927f9f357dba72b1d">+10/-7</a> </td> </tr> <tr> <td> <details> <summary><strong>usePanelDataLoader.ts</strong><dd><code>Integrate cancelQuery into panel data loader</code> </dd></summary> <hr> web/src/composables/dashboard/usePanelDataLoader.ts <li>Imported and initialized <code>useCancelQuery</code> composable<br> <li> Integrated composable in cleanup logic<br> <li> Suppressed notifications by passing <code>false</code> </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7405/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+10/-0</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
61c23fb416 |
fix: o2 ai changes (#7397)
### **User description** 1. This PR added beta text to o2 ai 2. added search history functionality to the chat history 3. added clearing of history functionality so here it will delete the history that was stored in indexDB if it reaches 100 so it will delete the old history 4. now we only show top 100 history to the users. ___ ### **PR Type** Enhancement ___ ### **Description** - Add "Beta" label to O2 AI chat header - Introduce searchable chat history menu - Limit history to latest 100 entries - Auto-delete excess history from IndexedDB ___ ### **Changes diagram** ```mermaid flowchart LR A["User clicks history icon"] --> B["Load history from IndexedDB"] B --> C["Trim history to 100 entries"] C --> D["Delete older entries in DB"] D --> E["Assign to chatHistory.value"] E --> F["Show history menu"] F --> G["Filter via search input"] G --> H["Display filteredChatHistory"] ``` ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>O2AIChat.vue</strong><dd><code>Chat component UI enhancements</code> </dd></summary> <hr> web/src/components/O2AIChat.vue <li>Added "Beta" badge next to O2 AI title<br> <li> Replaced static history list with search-enabled menu<br> <li> Limited history to top 100 items and auto-deletion<br> <li> Defined <code>historySearchTerm</code> and <code>filteredChatHistory</code> computed<br> <li> Added CSS classes for beta badge and history menu layout </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7397/files#diff-a6a125719a7b32b31b53fcfe05c12081d82c139a401699affdda0db8e73887e3">+133/-25</a></td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
b03245cd07 |
fix: http and http2 partition pagination fixes (#7241)
### **PR Type** Bug fix, Enhancement ___ ### **Description** Fix HTTP/HTTP2 streaming in Safari Improve partition-based pagination logic Add region and cluster query parameters Refine aggregation and streaming pagination flows ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>ShortUrl.vue</strong><dd><code>Fix original URL redirection for deeper paths</code> </dd></summary> <hr> web/src/views/ShortUrl.vue - Updated handleOriginalUrl to join URL segments dynamically </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7241/files#diff-b7ffcc5de24f9e1db5a3a8e78a686727360f9061ca6f9f8ae60456c3d603f9b7">+3/-2</a> </td> </tr> <tr> <td> <details> <summary><strong>useStreamingSearch.ts</strong><dd><code>Add Safari-compatible HTTP2 streaming</code> </dd></summary> <hr> web/src/composables/useStreamingSearch.ts <li>Manually read streams with TextDecoder for Safari<br> <li> Post decoded chunks to worker for processing<br> <li> Retain start and end stream control messages </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7241/files#diff-8fce3e25a161cd458e734bd9b1f98aadefe3482da7b6529a5b1f4fa20ec115e2">+37/-4</a> </td> </tr> </table></td></tr><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>useLogs.ts</strong><dd><code>Enhance log pagination and cluster support</code> </dd></summary> <hr> web/src/composables/useLogs.ts <li>Inject regions and clusters into query and URL<br> <li> Fix partition pagination for zero or multiple partitions<br> <li> Add fetchAllParitions for complete partition fetch<br> <li> Apply dynamic histogram_interval to SQL queries </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7241/files#diff-1040f61354f92711e0e77ed4e9bfa15586d45a94c7e2ab06cc37372068030e7b">+116/-23</a></td> </tr> <tr> <td> <details> <summary><strong>streamWorker.js</strong><dd><code>Refactor worker for chunk-based streaming</code> </dd></summary> <hr> web/src/workers/streamWorker.js <li>Remove transferable ReadableStream handling<br> <li> Introduce processChunk to buffer and parse SSE<br> <li> Consolidate message parsing and error handling </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7241/files#diff-8534facfcca68c16701832f43a501abcdb92847115c46fced5d69792e5594dd9">+75/-94</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
d7a040e0fd |
fix: dashboard tooltip error (#7387)
### **User description** - Try to lower the frequency of the following error. - Mainly, it's due to echarts.  ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Enable lazyUpdate and notMerge in setOption - Wrap formatter functions with try-catch - Provide safe default returns on errors - Improve chart lazy loading and error resilience ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>ChartRenderer.vue</strong><dd><code>Enable lazy chart updates in ChartRenderer</code> </dd></summary> <hr> web/src/components/dashboards/panels/ChartRenderer.vue <li>Added <code>lazyUpdate: true</code> and <code>notMerge: true</code> options to <code>chart.setOption</code><br> <li> Enabled legend updates with lazy loading<br> <li> Updated initial chart set up calls for performance </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7387/files#diff-353fab39cd76197438814db862c4a506636ea7e15633ee92d9269adbd97fe67c">+6/-6</a> </td> </tr> </table></td></tr><tr><td><strong>Error handling</strong></td><td><table> <tr> <td> <details> <summary><strong>convertSQLData.ts</strong><dd><code>Add exception handling in formatters</code> </dd></summary> <hr> web/src/utils/dashboard/convertSQLData.ts <li>Wrapped tooltip and formatter functions in try-catch<br> <li> Added safe default return values on errors<br> <li> Used optional chaining for null-safe access </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7387/files#diff-88c0e865040a20b2c8bb7d77e7f6bd187a5b07c1645c120223bc9d59603752c3">+451/-368</a></td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
d1eab9e387 |
fix: ensure minimum loading progress percentage is 5 (#7385)
### **PR Type** Bug fix ___ ### **Description** - Enforce minimum loading progress percentage at 5% - Update displayPercentage computed property ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>LoadingProgress.vue</strong><dd><code>Clamp minimum loading progress to 5%</code> </dd></summary> <hr> web/src/components/common/LoadingProgress.vue <li>Introduce clamp for minimum progress of 5%<br> <li> Return 5% when loadingProgressPercentage < 5 </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7385/files#diff-0e124527ca2b1d19c4f098616e1cdeb8c405d4f89b68bf119a09b9a518eba23a">+3/-0</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
8f826c88bd | chore(deps): bump pbkdf2 from 3.1.2 to 3.1.3 in /web (#7314) | ||
|
|
b0e9fde4b7 |
fix: return reports list data that ui needs to show (#7274)
### **User description** Because of the report migration merged recently, there are some fields that were not getting returned for the list reports api. Also, there was a bug in the report migration logic where the report frequency stored in the migrated table was not correct. This pr fixes both the issues. ___ ### **PR Type** Enhancement, Bug fix ___ ### **Description** - Extend ListReports API with time and dashboard fields - Update migration for align_time and JSON serialization - Expand query to include dashboards and frequency - Fix front-end snake_case field mappings ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>reports.rs</strong><dd><code>Expand ListReportsResponseBodyItem with new fields</code> </dd></summary> <hr> src/handler/http/models/reports.rs <li>Imported <code>DateTime</code>, <code>ReportFrequency</code>, <code>ReportTimerange</code><br> <li> Added <code>created_at</code>, <code>dashboards</code>, <code>frequency</code>, <code>org_id</code> fields<br> <li> Changed error type to <code>anyhow::Error</code><br> <li> Introduced <code>ReportDashboard</code> struct and JSON parsing </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7274/files#diff-eddffe2b67f00de168167533f31cd12adbb541fa66af4c56e6a96a03469ec5fb">+38/-7</a> </td> </tr> <tr> <td> <details> <summary><strong>m20250611_000002_populate_reports_table.rs</strong><dd><code>Add align_time and simplify frequency serialization</code> </dd></summary> <hr> src/infra/src/table/migration/m20250611_000002_populate_reports_table.rs <li>Derived <code>Serialize</code> for <code>ReportFrequency</code> types<br> <li> Added <code>align_time</code> default property<br> <li> Removed custom <code>ReportFrequency</code> enum<br> <li> Simplified JSON serialization calls </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7274/files#diff-8247af6d6f8ccb6a5a51daff4cb1e352585be2d1c785d86ae5ebfea1dbc1099c">+12/-55</a> </td> </tr> <tr> <td> <details> <summary><strong>queries.rs</strong><dd><code>Expand ListReportsQueryResult for report dashboards</code> </dd></summary> <hr> src/infra/src/table/reports/queries.rs <li>Added <code>report_created_at</code>, <code>report_frequency</code>, <code>org_id</code> fields<br> <li> Joined <code>report_dashboards</code> and <code>dashboards</code> tables<br> <li> Included dashboard IDs, tabs, and timerange in query<br> <li> Updated tests to cover new columns and joins </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7274/files#diff-144c4572241c5b3f13abe628832674ad8cebb72e51acb1d1b14fae2a8307208a">+93/-22</a> </td> </tr> </table></td></tr><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>ReportList.vue</strong><dd><code>Fix ReportList snake_case field mapping</code> </dd></summary> <hr> web/src/components/reports/ReportList.vue <li>Renamed <code>lastTriggeredAt</code> to <code>last_triggered_at</code><br> <li> Updated data mapping for <code>last_triggered_at</code> </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7274/files#diff-f7d700f7e67fbaba3c58ab5d2c614925db743101828214445ce9dae35dc29067">+3/-3</a> </td> </tr> <tr> <td> <details> <summary><strong>ScheduledDashboards.vue</strong><dd><code>Align ScheduledDashboards with snake_case response</code> </dd></summary> <hr> web/src/views/Dashboards/ScheduledDashboards.vue <li>Aligned snake_case for <code>last_triggered_at</code>, <code>created_at</code>, <code>org_id</code><br> <li> Updated column labels to match new fields<br> <li> Adjusted data formatting conversions </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7274/files#diff-2aae6e201775bf68f6beb59704f131f7aca0da0fd9d8ba8ac4bdb5b9b289f41e">+6/-6</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai> |
||
|
|
3c5474c4a0 |
fix: simplify isPartialData logic on complete (#7373)
### **PR Type** Bug fix, Enhancement ___ ### **Description** - Always set `isPartialData` on event progress - Clear `isPartialData` when loading completes - Remove conditional checks on partial data - Simplify flag handling in data loader ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>usePanelDataLoader.ts</strong><dd><code>Simplify partial data flag logic</code> </dd></summary> <hr> web/src/composables/dashboard/usePanelDataLoader.ts <li>Always mark <code>isPartialData</code> true on event_progress<br> <li> Unconditionally clear <code>isPartialData</code> on complete<br> <li> Remove conditional partial data checks<br> <li> Simplify flag logic in data loader </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7373/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+2/-11</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
925d3d04aa |
fix: dashboard hover issue (#7353)
### **PR Type** Bug fix ___ ### **Description** - Use `mouseOutEffectFn` on globalout event - Remove `mouseHoverEffectFn` reset call - Flush pending throttled hover resets immediately ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>ChartRenderer.vue</strong><dd><code>Flush throttled hover resets on globalout</code> </dd></summary> <hr> web/src/components/dashboards/panels/ChartRenderer.vue <li>Replaced <code>mouseHoverEffectFn({})</code> with <code>mouseOutEffectFn()</code><br> <li> Added <code>.flush()</code> on <code>throttledSetHoveredSeriesIndex</code> and <br><code>throttledSetHoveredSeriesName</code><br> <li> Added comment explaining flush behavior </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7353/files#diff-353fab39cd76197438814db862c4a506636ea7e15633ee92d9269adbd97fe67c">+4/-3</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
1f58057129 |
feat: dashboard custom value from input for variables (#7341)
### **PR Type** Enhancement, Bug fix ___ ### **Description** - Add custom value support in variable selectors - Preserve custom entries when filtering multi-select - Remove deprecated URL initial value logic - Standardize popup behavior and label casing ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>VariablesValueSelector.vue</strong><dd><code>Custom value filtering in VariablesValueSelector</code> </dd></summary> <hr> web/src/components/dashboards/VariablesValueSelector.vue <li>Comment out URL-based initial value handling<br> <li> Merge custom typed values into filtered selections<br> <li> Adjust multi-select filter to include custom entries<br> <li> Minor formatting refactor for SQL query call </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7341/files#diff-5c6e3bcb87cb64f25bf8157a541604b7a4904c1282acf662cab5d76a5be6bd56">+36/-26</a> </td> </tr> <tr> <td> <details> <summary><strong>VariableQueryValueSelector.vue</strong><dd><code>Custom value support in VariableQueryValueSelector</code> </dd></summary> <hr> web/src/components/dashboards/settings/VariableQueryValueSelector.vue <li>Always show custom value option when typing<br> <li> Append <code>::CUSTOM_VALUE</code> to custom selections<br> <li> Update <code>filteredOptions</code> and <code>displayValue</code> to label customs<br> <li> Remove <code>SELECT_ALL_VALUE</code> and customs on regular select<br> <li> Close popup after custom or regular value selection </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7341/files#diff-2cca760c14e835bd1845485fb5517a60f71a6dc23626a6381c8559b82476f5f4">+62/-20</a> </td> </tr> </table></td></tr><tr><td><strong>Configuration changes</strong></td><td><table> <tr> <td> <details> <summary><strong>constants.ts</strong><dd><code>Add CUSTOM_VALUE constant</code> </dd></summary> <hr> web/src/utils/dashboard/constants.ts <li>Add <code>CUSTOM_VALUE</code> constant for custom entries<br> <li> Keep <code>SELECT_ALL_VALUE</code> export unchanged </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7341/files#diff-a5e1b14a291a4b42368faa0160f555b19bdc1a542624d4f89ea6e3ed7c4a664d">+2/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
c4e5901abe |
fix: cherry-pick rc9 fixes (#7315)
Ref: - fix: streaming_id in htttp2 streaming response #7257 - feat: histogram_interval in search api #7271 - fix: remove streaming_id on search error #7284 - fix: limit in sql & write partial results to cache #7296 ### **User description** - `histogram_interval` as search body param - `aggregation_cache_enabled` support for settings `get` and `post` api --------- Co-authored-by: hengfei yang <hengfei.yang@gmail.com> Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: omkark06 <omkar@zinclabs.io> ___ ### **PR Type** Enhancement ___ ### **Description** - Add `histogram_interval` support throughout search API - Propagate interval into Query, RPC, and optimizer - Replace websocket search toggle with `aggregation_cache_enabled` - Add UI toggle and localization for aggregation cache ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Configuration changes</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>organization.rs</strong><dd><code>Replace websocket with aggregation cache setting</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-4f089715a7ac4f78b45039d773f2fccbb4fbc6a409e0ab9ceee1fcf7911bc44b">+13/-6</a> </td> </tr> </table></details></td></tr><tr><td><strong>Enhancement</strong></td><td><details><summary>18 files</summary><table> <tr> <td><strong>search.rs</strong><dd><code>Add histogram_interval to Query defaults</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-373e83a31e5bbc82fba05d7ae274b0dbd624ed748272232cf7eb8b8c3b2f3afc">+6/-0</a> </td> </tr> <tr> <td><strong>settings.rs</strong><dd><code>Handle aggregation_cache_enabled in settings API</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-1e807254f2faf8fd09b802f71b23412f203eed289033f96bfc62b15dd997db8c">+4/-5</a> </td> </tr> <tr> <td><strong>around.rs</strong><dd><code>Initialize histogram_interval in around requests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-93b3688de26f8f7c9dc0389763e9999a254bcded15b6ae8c8349f18aec83bd4f">+2/-0</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Expose aggregation_cache_enabled in status API</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-ca09c9c9b020049bdbc3382c466bfcca80daac92e98760d9a9a76172abf34049">+4/-2</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Initialize histogram_interval in trace requests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-64694c886c809b6efe449e6eba9fbb33d31ce5a3c49cea1a30006fc1d9522665">+1/-0</a> </td> </tr> <tr> <td><strong>request.rs</strong><dd><code>Add histogram_interval to service Request</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-7f4d75d75758cf876ff1a3a450a9804caad031a91199d33dd066c88c0461800b">+5/-0</a> </td> </tr> <tr> <td><strong>sql.rs</strong><dd><code>Support custom histogram intervals in SQL</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-d9ccf393c53794b0ef2816eef12742c26e23d2788cde27780af7570662aea446">+8/-3</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Propagate histogram_interval in search service</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-c3b85ea662a885fbd39797968928b291cb59a58f53a03f7b7dfd7ba8b6a7985a">+1/-0</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Include histogram_interval in optimizer rules</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-3b1c9f0a84041235ca3765361e8eadfd7e9309a52319da882dee0540c826eb3d">+5/-1</a> </td> </tr> <tr> <td><strong>rewrite_histogram.rs</strong><dd><code>Use custom interval in histogram rewrite</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-fa40d6f792f0ca212f799b0136f0f216c7f34cb3130738903a26c45749a81450">+14/-6</a> </td> </tr> <tr> <td><strong>flight.rs</strong><dd><code>Apply aggregation cache setting in flight</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-dbffb1a03b65f6a9163b18c5bb1241ba2966735657be39bbe9f4d0e3260d8c1d">+8/-2</a> </td> </tr> <tr> <td><strong>node.rs</strong><dd><code>Forward histogram_interval in distributed plan</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-6a811582bb8dc3a36152b94cb4984126ee4417532eed0554e042c55ea18011fb">+3/-0</a> </td> </tr> <tr> <td><strong>leader.rs</strong><dd><code>Leverage org cache setting in leader search</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-21a32af318adcd10e62fb0d45944993f623fb3d2d6df4bb70d882dfc8f677fdc">+13/-2</a> </td> </tr> <tr> <td><strong>follower.rs</strong><dd><code>Include histogram_interval in follower requests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-59e0cc386582cf8baf201977475fd9a7e479fd8ed000bbaa6746a51ecb28632f">+1/-0</a> </td> </tr> <tr> <td><strong>General.vue</strong><dd><code>UI toggle for aggregation cache</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-a191d0eb2843df5efa7f18d411a216e86558b49f7b6cdfa9501d69414b933fc3">+27/-1</a> </td> </tr> <tr> <td><strong>MainLayout.vue</strong><dd><code>Bind aggregation cache in layout</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-91e4134141264c4624d4eb4cfa987b33ed31eb6f551e089c0b26f2610dd54362">+2/-0</a> </td> </tr> <tr> <td><strong>usePanelDataLoader.ts</strong><dd><code>Fetch histogram_interval in panel loader</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+24/-26</a> </td> </tr> <tr> <td><strong>useLogs.ts</strong><dd><code>Set histogram_interval in log queries</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-1040f61354f92711e0e77ed4e9bfa15586d45a94c7e2ab06cc37372068030e7b">+5/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Documentation</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>en.json</strong><dd><code>Add enableAggregationCache translation</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-892aa3d75ab6e129ef9116aa21bec1b9a15ba69ce5366d2a19128078c690d824">+2/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Additional files</strong></td><td><details><summary>6 files</summary><table> <tr> <td><strong>export.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-b9ca11eac019064e747b0c75157c280c8e8fa6d75edb83ca9ae46777e9668cc0">+1/-7</a> </td> </tr> <tr> <td><strong>plan.proto</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-4f1a05aba1b09b2db2ffae983dcdf4ed294ed3698204af80d50ae2d7b711551b">+1/-0</a> </td> </tr> <tr> <td><strong>search.proto</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-789f17326b818d5fbd1b5b752bed17e5341fde3d3261951634edcf78cacf3dbe">+13/-12</a> </td> </tr> <tr> <td><strong>cluster.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-542d8f27a174c845740ca1c3fe0b697db89c3db666437c1c4dd8c9745510080c">+4/-0</a> </td> </tr> <tr> <td><strong>mod.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-ba9b65130898444f7815fd6068bdb0dc590612f74cc893f79d91b0afc44cc851">+1/-0</a> </td> </tr> <tr> <td><strong>wal.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7315/files#diff-f47892ffc5d3076d37a66f49f55db4e83cb6f42df517da68c001a42c04adac72">+1/-0</a> </td> </tr> </table></details></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: hengfei yang <hengfei.yang@gmail.com> Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: omkark06 <omkar@zinclabs.io> |
||
|
|
3dc4e21176 |
feat: add typeahead query builder for variable selection (#7306)
### **PR Type** Enhancement ___ ### **Description** - Add dynamic SQL parser import for variable typeahead - Implement buildVariablesTypeAheadQuery with base64 SQL - Update query context builder to use typeahead - Remove redundant inline LIKE filter logic ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>VariablesValueSelector.vue</strong><dd><code>Implement variable typeahead SQL builder</code> </dd></summary> <hr> web/src/components/dashboards/VariablesValueSelector.vue <li>Import and initialize <code>sqlParser</code> dynamically<br> <li> Add <code>buildVariablesTypeAheadQuery</code> for typeahead SQL<br> <li> Encode generated queries in base64 format<br> <li> Adjust query context builder to use new function </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7306/files#diff-5c6e3bcb87cb64f25bf8157a541604b7a4904c1282acf662cab5d76a5be6bd56">+64/-9</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
91495ffd9e |
fix: dashboards variables loading (#7293)
### **User description** - #7288 - #7291 ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Auto-close dropdown on value selection - Fix filter parsing fallback for queries - Remove suppressLoadOnNextPopup logic - Clear search text on popup hide ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>VariablesValueSelector.vue</strong><dd><code>Improve filter parsing fallback</code> </dd></summary> <hr> web/src/components/dashboards/VariablesValueSelector.vue <li>Use optional chaining for filter parsing <br> <li> Default to empty array if filter missing </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7293/files#diff-5c6e3bcb87cb64f25bf8157a541604b7a4904c1282acf662cab5d76a5be6bd56">+1/-1</a> </td> </tr> </table></td></tr><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>VariableQueryValueSelector.vue</strong><dd><code>Auto-close selector popup on selection</code> </dd></summary> <hr> web/src/components/dashboards/settings/VariableQueryValueSelector.vue <li>Introduce closePopUpWhenValueIsSet helper <br> <li> Invoke popup close after selectAll/custom <br> <li> Remove suppressLoadOnNextPopup flag <br> <li> Reset filterText on popup hide/value set </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7293/files#diff-2cca760c14e835bd1845485fb5517a60f71a6dc23626a6381c8559b82476f5f4">+15/-15</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> |
||
|
|
d03348582f |
feat: dashboard type ahead for variables (#7277)
### **PR Type** Enhancement, Bug fix ___ ### **Description** - Add debounced typeahead search in variable selectors - Implement unified cancellation to avoid race conditions - Extend loader functions to accept `searchText` parameter - Clean up controllers, timeouts and promises on unmount ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>VariablesValueSelector.vue</strong><dd><code>Add search and cancellation support</code> </dd></summary> <hr> web/src/components/dashboards/VariablesValueSelector.vue <li>Pass <code>searchResults</code> and <code>onVariableSearch</code> to child selector<br> <li> Clean up search controllers, debounce timeouts, and promises on <br>unmount<br> <li> Check cancellation before processing responses and loading<br> <li> Extend <code>loadSingleVariableDataByName</code> and <code>handleVariableType</code> to handle <br><code>searchText</code> </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7277/files#diff-5c6e3bcb87cb64f25bf8157a541604b7a4904c1282acf662cab5d76a5be6bd56">+238/-10</a></td> </tr> <tr> <td> <details> <summary><strong>VariableQueryValueSelector.vue</strong><dd><code>Implement debounced search in selector</code> </dd></summary> <hr> web/src/components/dashboards/settings/VariableQueryValueSelector.vue <li>Add <code>searchResults</code> prop and emit <code>search</code> event<br> <li> Debounce <code>filterText</code> watch for 1000ms before search emit<br> <li> Show <code>searchResults</code> during filter and track <code>searching</code> state<br> <li> Reset results and loading on clear and popup hide </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7277/files#diff-2cca760c14e835bd1845485fb5517a60f71a6dc23626a6381c8559b82476f5f4">+61/-3</a> </td> </tr> </table></td></tr><tr><td><strong>Miscellaneous</strong></td><td><table> <tr> <td> <details> <summary><strong>ViewDashboard.vue</strong><dd><code>Remove debug logging</code> </dd></summary> <hr> web/src/views/Dashboards/ViewDashboard.vue - Remove `console.log` debugging on time update </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7277/files#diff-052badb6758aff09ceaf1645869b9ba96125e6a0ea21abb01a8ee0a40d6467f3">+0/-5</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> |
||
|
|
19a37e5992 |
fix: org related changes (#7187)
### **User description** 1. This PR fixes 2 issues Fetching user roles for OSS is not supported Introduce organization to oss ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Restrict fetchUserRoles to enterprise/cloud - Add organizations tab in OSS IAM view - Introduce organizations route for OSS - Remove duplicate org route in enterprise ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>AddUser.vue</strong><dd><code>Conditional fetchUserRoles for OSS</code> </dd></summary> <hr> web/src/components/iam/users/AddUser.vue <li>Wrapped fetchUserRoles under environment check<br> <li> Prevent roles fetching in OSS mode </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7187/files#diff-47543c0488c8cb5bcf77e2bb4af9d0a5dd249993cd9577c4852f7950c7aaec91">+3/-1</a> </td> </tr> </table></td></tr><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>IdentityAccessManagement.vue</strong><dd><code>Add organizations tab for OSS</code> </dd></summary> <hr> web/src/views/IdentityAccessManagement.vue - Added "organizations" to OSS tabs list </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7187/files#diff-60b63024c98ee8927e12f9ebec93e99ba7ff419038cfe1cc57d49de1f6f342d6">+1/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>useEnterpriseRoutes.ts</strong><dd><code>Add organizations route for OSS</code> </dd></summary> <hr> web/src/composables/shared/useEnterpriseRoutes.ts <li>Added OSS "organizations" route entry<br> <li> Removed duplicate enterprise org route </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7187/files#diff-962367ed3d329e73232da2c262cf10c60b14820dd43e95e94302cdcb2f080cbe">+10/-8</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
91a9a4b6ba |
fix: alerts module issues (#7186)
### **User description** 1. This PR fixes the following issues Search Bar issues on Alerts page Pagination needs to be implemented on the Templates page (# 527) When there are no results, number of records field should not display 1-0 of 0 #7129 This also provides one more improvement to the destinations dropdown 1. so it adds typeahead and also when you select with a typeahead and the typeahead should be get cleared because it is multiselect ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Reapply local alert filter after deletion - Extract local alert filtering function - Add pagination to template list - Fix zero-result display range ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>AlertList.vue</strong><dd><code>Extract and apply local alert filtering</code> </dd></summary> <hr> web/src/components/alerts/AlertList.vue <li>Await getAlertsFn and reapply local search filter<br> <li> Replace inline filtering with <code>filterAlertsByQuery</code><br> <li> Extract <code>filterAlertsByQuery</code> for alerts </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7186/files#diff-be3e41b823e163b226ffc270d95cc4981e59c600851e4e0d10ee5e4ee994ac8e">+28/-19</a> </td> </tr> <tr> <td> <details> <summary><strong>TemplateList.vue</strong><dd><code>Add pagination controls to templates</code> </dd></summary> <hr> web/src/components/alerts/TemplateList.vue <li>Rename q-table ref to <code>qTableRef</code><br> <li> Integrate <code>QTablePagination</code> in top and bottom slots<br> <li> Add perPageOptions, resultTotal, pagination state<br> <li> Implement <code>changePagination</code> handler </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7186/files#diff-7df66364d7d69a26cfa25cbc555d0e090c2f73e51c8386d9b0435bae4412564c">+39/-4</a> </td> </tr> </table></td></tr><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>Pagination.vue</strong><dd><code>Fix zero-result range display</code> </dd></summary> <hr> web/src/components/shared/grid/Pagination.vue - Correct start index when no results </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7186/files#diff-b6efd6b9b819d4491cbe49faddf5134a0114567acb3197fbd2a0e60afb7fc44a">+1/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
bf480bbe5e |
feat: dashboard variables add custom values from input (#7246)
### **PR Type** Enhancement ___ ### **Description** - Added Enter key handling for custom values - Appended new options dynamically from input - Introduced suppressLoadOnNextPopup to skip reload - Cleaned up debug comments in template ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>VariableQueryValueSelector.vue</strong><dd><code>Add custom input option handling</code> </dd></summary> <hr> web/src/components/dashboards/settings/VariableQueryValueSelector.vue <li>Added <code>handleKeydown</code> for Enter key support<br> <li> Extended <code>filterOptions</code> to push new options<br> <li> Introduced <code>suppressLoadOnNextPopup</code> flag<br> <li> Removed commented debug template code </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7246/files#diff-2cca760c14e835bd1845485fb5517a60f71a6dc23626a6381c8559b82476f5f4">+54/-6</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> |
||
|
|
8559eb9389 |
fix: cancel query issue with http streaming (#7252)
- #7249 |
||
|
|
34e9285270 | fix: dashboard move to logs (#7238) | ||
|
|
9335e0a9dd |
fix: panel load issue on panel visible (#7232)
### **PR Type** Bug fix ___ ### **Description** - Introduce early cache restore before visibility wait - Prevent unnecessary waiting on initial load - Ensure state reset and early return on cache hit - Remove redundant cache check block later ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>usePanelDataLoader.ts</strong><dd><code>Early cache restore before panel visibility</code> </dd></summary> <hr> web/src/composables/dashboard/usePanelDataLoader.ts <li>Added runCount==0 check before panel visibility wait<br> <li> Invoked restoreFromCache and early return on hit<br> <li> Removed duplicate cache-restore block later<br> <li> Updated log messages around cache restoration </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7232/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+14/-14</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
4b7cc705ba |
feat: additional options to show value on chart (#7223)
Added options: 1. Left 2. Right 3. Bottom 4. InsideLeft 5. InsideRight 6. InsideTopLeft 7. InsideBottomLeft 8. InsideTopRight 9. InsideBottomRight 10. Outside  |
||
|
|
2e60555740 |
feat: dashboard skip values api call if already loading (#7206)
### **PR Type** Bug fix ___ ### **Description** - Prevent dropdown load when already loading - Early return on pending variable loads - Parenthesize arrow function in cleanup ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>VariablesValueSelector.vue</strong><dd><code>Prevent duplicate variable load calls</code> </dd></summary> <hr> web/src/components/dashboards/VariablesValueSelector.vue <li>Guard against duplicate variable loading<br> <li> Early return on pending variable loads<br> <li> Parenthesize arrow function in cleanup </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7206/files#diff-5c6e3bcb87cb64f25bf8157a541604b7a4904c1282acf662cab5d76a5be6bd56">+5/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> |
||
|
|
d2588f2d80 |
fix: logs page chart render issue on another page switch (#7207)
### **User description** - Move away from the logs page and come back, histogram chart doesn't load. - on theme change, charts render issue on dashboard ___ ### **PR Type** Bug fix ___ ### **Description** - detach event listeners before chart disposal - add repeated nextTick delays on activation - reinitialize chart with correct theme and renderer - wrap activation logic in error handler ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>ChartRenderer.vue</strong><dd><code>Enhance chart cleanup and reinitialization</code> </dd></summary> <hr> web/src/components/dashboards/panels/ChartRenderer.vue <li>added off calls before <code>chart.dispose</code><br> <li> removed <code>chartRef.value</code> clearing<br> <li> enhanced <code>onActivated</code> with nextTick loops and chart init<br> <li> wrapped activation logic in try/catch emitting error event </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7207/files#diff-353fab39cd76197438814db862c4a506636ea7e15633ee92d9269adbd97fe67c">+40/-18</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
3f5a9d59b6 |
fix: dashboard variables search (#7195)
### **PR Type** Bug fix ___ ### **Description** Preserve dropdown input when `filterText.value` exists Call `filterOptions` for non-empty `filterText.value` ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>VariableQueryValueSelector.vue</strong><dd><code>Conditional input update or filtering</code> </dd></summary> <hr> web/src/components/dashboards/settings/VariableQueryValueSelector.vue <li>Add <code>filterText.value</code> check before updating input<br> <li> Update input only if <code>filterText.value</code> empty<br> <li> Invoke <code>filterOptions</code> when <code>filterText.value</code> exists </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7195/files#diff-2cca760c14e835bd1845485fb5517a60f71a6dc23626a6381c8559b82476f5f4">+5/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
531ff43688 |
fix: check 2nd arg for approx percentile fn on visualization page (#7189)
### **PR Type** Bug fix ___ ### **Description** - Check `approx_percentile_cont` second argument - Map 0.5/0.50 to `p50` percentile - Support `p90`, `p95`, and `p99` mappings - Default fallback to `p50` percentile ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>sqlUtils.ts</strong><dd><code>Implement percentile mapping for approx_percentile_cont</code> </dd></summary> <hr> web/src/utils/query/sqlUtils.ts <li>Added check for <code>approx_percentile_cont</code> argument<br> <li> Mapped second argument to p50, p90, p95, and p99<br> <li> Defaulted unrecognized percentiles to <code>p50</code> </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7189/files#diff-dde40e8fcb5c37b06c011ede08922c44a3c025682fbc341aee97ba046b73a0e3">+22/-0</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
97b00ae6bf |
perf: update grid layout lib to improve performance and memory leaks (#7181)
### **PR Type** Enhancement, Bug fix ___ ### **Description** - Replace vue3-grid-layout with GridStack.js - Optimize grid initialization and event handling - Add cleanup hooks to prevent memory leaks - Update dependencies for new grid library ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>RenderDashboardCharts.vue</strong><dd><code>Switch dashboard grid to GridStack.js</code> </dd></summary> <hr> web/src/views/Dashboards/RenderDashboardCharts.vue <li>Removed <code>vue3-grid-layout</code> components and imports<br> <li> Added <code>GridStack</code> import, initialization, and events<br> <li> Refactored layout methods: init, refresh, update, reset<br> <li> Implemented cleanup hooks in lifecycle to avoid leaks </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7181/files#diff-313f7c69102161242c893c863c50f1f1cd1fc19b68b5c99bf840b4b5c72f0f2e">+292/-153</a></td> </tr> </table></td></tr><tr><td><strong>Dependencies</strong></td><td><table> <tr> <td> <details> <summary><strong>package.json</strong><dd><code>Update grid layout dependencies</code> </dd></summary> <hr> web/package.json <li>Added <code>gridstack</code> dependency<br> <li> Removed <code>vue3-grid-layout</code> dependency </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7181/files#diff-b861012a5dd72b8a9f3281b7cf09f5a779c98569d040b1bbc1db50f1b15e7cce">+1/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech> |
||
|
|
cd470855ec |
perf: dashboard performance improvements (#7166)
### **PR Type** Bug fix, Enhancement ___ ### **Description** - Clear component refs on unmount - Dispose Monaco editors and providers - Remove event listeners on teardown - Disable dashboards route keepAlive ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>PanelSchemaRenderer.vue</strong><dd><code>Cleanup dashboard panel refs on unmount</code> </dd></summary> <hr> web/src/components/dashboards/PanelSchemaRenderer.vue <li>Added onUnmounted hook for cleanup<br> <li> Cleared chart, drilldown, annotation, table refs </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7166/files#diff-e5376e7e77bf3aaf6590c2522d8c2dbffcc95a8006ae0d6dc0040a37825367d6">+8/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>DashboardQueryEditor.vue</strong><dd><code>Cleanup QueryEditor refs on unmount</code> </dd></summary> <hr> web/src/components/dashboards/addPanel/DashboardQueryEditor.vue <li>Removed resize listener on unmount<br> <li> Cleared queryEditorRef and vrlFnEditorRef </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7166/files#diff-68bf1b319223d103f1b99e0b681764e4eb76942399397779c81c2cd18f6485ff">+5/-0</a> </td> </tr> <tr> <td> <details> <summary><strong>MonacoHTMLEditor.vue</strong><dd><code>Dispose and clear Monaco HTML editor refs</code> </dd></summary> <hr> web/src/components/dashboards/addPanel/MonacoHTMLEditor.vue <li>Disposed editorObj and provider on unmount<br> <li> Reset editorObj, provider, editorRef to null </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7166/files#diff-ceffb7bda954a9e66f97c1bf28b92ba4ce00bc650f1b24b50997f9745b3ddc5c">+12/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>MonacoMarkdownEditor.vue</strong><dd><code>Dispose and clear Monaco Markdown editor refs</code> </dd></summary> <hr> web/src/components/dashboards/addPanel/MonacoMarkdownEditor.vue <li>Disposed editorObj and provider on unmount<br> <li> Reset editorObj, provider, editorRef to null </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7166/files#diff-387421c070b513acdb939e69b2ba73a47b990a0a10b00a937fa4dc06f984a3dc">+12/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>AddPanel.vue</strong><dd><code>Clear datePicker ref on unmount</code> </dd></summary> <hr> web/src/views/Dashboards/addPanel/AddPanel.vue - Cleared dateTimePickerRef on unmount </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7166/files#diff-c9632db1ad95af95aba10161bcbc7c5608318919f228637bdafae3f3a31267e8">+3/-0</a> </td> </tr> </table></td></tr><tr><td><strong>Configuration changes</strong></td><td><table> <tr> <td> <details> <summary><strong>router.ts</strong><dd><code>Disable keepAlive on dashboards route</code> </dd></summary> <hr> web/src/composables/shared/router.ts - Disabled keepAlive for dashboards route </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7166/files#diff-a1827956e5a817edc7efb5f4516e7cc4d453e15ea9e9d970aafb8360b09fc78e">+1/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> |
||
|
|
905afff30b |
perf: dashboard memory leak prevention (#7157)
Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> |
||
|
|
89500c0b97 |
feat: dashboard values api using ws (#6752)
### **PR Type** Enhancement, Bug fix ___ ### **Description** - Add WebSocket and HTTP2 streaming for variable fetching - Introduce trace ID management and cancellation - Refactor variable initialization and dependency loading - Improve multiselect UI with select-all logic ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>6 files</summary><table> <tr> <td><strong>VariablesValueSelector.vue</strong><dd><code>Integrate WebSocket/HTTP streaming variable fetching</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-5c6e3bcb87cb64f25bf8157a541604b7a4904c1282acf662cab5d76a5be6bd56">+1098/-196</a></td> </tr> <tr> <td><strong>AddSettingVariable.vue</strong><dd><code>Always show multiselect default toggle section</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-e622f54c1f7629ee67d29ed2fc87008d07eb9246767a05435cc42c3c17ce459a">+1/-2</a> </td> </tr> <tr> <td><strong>VariableQueryValueSelector.vue</strong><dd><code>Improve filter, select-all and value display logic</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-2cca760c14e835bd1845485fb5517a60f71a6dc23626a6381c8559b82476f5f4">+111/-72</a></td> </tr> <tr> <td><strong>useValuesWebSocket.ts</strong><dd><code>Extract composable for values WebSocket logic</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-e7269167023b1376efe6111c46a96e10fe3e10ff90840203b09f09311f24f90a">+321/-0</a> </td> </tr> <tr> <td><strong>useDashboardPanel.ts</strong><dd><code>Integrate values WebSocket composable in panel</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-fbba1700750053b9eaf38ddd30dab84531bc44131c795ebb713811e4930cd7cb">+46/-54</a> </td> </tr> <tr> <td><strong>useSearchWebSocket.ts</strong><dd><code>Extend WebSocket payload types for values API</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-1b4f21615bf92118a6c0b6907e1d765a76425163b69d00a2c328a8e1b2ff81c5">+2/-2</a> </td> </tr> </table></details></td></tr><tr><td><strong>Bug fix</strong></td><td><details><summary>4 files</summary><table> <tr> <td><strong>RenderDashboardCharts.vue</strong><dd><code>Render variables selector only with valid global time</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-313f7c69102161242c893c863c50f1f1cd1fc19b68b5c99bf840b4b5c72f0f2e">+1/-0</a> </td> </tr> <tr> <td><strong>ViewDashboard.vue</strong><dd><code>Normalize variables before change detection</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-052badb6758aff09ceaf1645869b9ba96125e6a0ea21abb01a8ee0a40d6467f3">+23/-2</a> </td> </tr> <tr> <td><strong>AddPanel.vue</strong><dd><code>Normalize panel variables for stale check</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-c9632db1ad95af95aba10161bcbc7c5608318919f228637bdafae3f3a31267e8">+23/-1</a> </td> </tr> <tr> <td><strong>usePanelDataLoader.ts</strong><dd><code>Skip search calls when variables are empty</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+47/-5</a> </td> </tr> </table></details></td></tr><tr><td><strong>Configuration changes</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>constants.ts</strong><dd><code>Add constant for select-all multiselect option</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/6752/files#diff-a5e1b14a291a4b42368faa0160f555b19bdc1a542624d4f89ea6e3ed7c4a664d">+2/-0</a> </td> </tr> </table></details></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> |
||
|
|
ec963fb6b9 |
feat: dashboard warning icon for partial data (#7044)
### **PR Type** Enhancement ___ ### **Description** - Add partial data flag to data loader - Emit `is-partial-data-update` event upstream - Display warning icon for incomplete data - Persist partial data state to cache ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>PanelContainer.vue</strong><dd><code>Show partial data warning icon</code> </dd></summary> <hr> web/src/components/dashboards/PanelContainer.vue <li>Add <code><q-btn></code> for partial data warning<br> <li> Import <code>symOutlinedClockLoader20</code> icon<br> <li> Track <code>isPartialData</code> in setup return<br> <li> Handle <code>is-partial-data-update</code> event </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7044/files#diff-414737cba6064461f7026e0b016afcb9620bd5bb29c4708fc170dee789dbcd4d">+30/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>PanelSchemaRenderer.vue</strong><dd><code>Emit partial data update event</code> </dd></summary> <hr> web/src/components/dashboards/PanelSchemaRenderer.vue <li>Add <code>"is-partial-data-update"</code> to emits<br> <li> Watch <code>isPartialData</code> and emit changes<br> <li> Reformat <code><LoadingProgress></code> props formatting </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7044/files#diff-e5376e7e77bf3aaf6590c2522d8c2dbffcc95a8006ae0d6dc0040a37825367d6">+12/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>usePanelDataLoader.ts</strong><dd><code>Manage loader partial data state</code> </dd></summary> <hr> web/src/composables/dashboard/usePanelDataLoader.ts <li>Add <code>isPartialData</code> to loader state<br> <li> Set flag on abort and incomplete loads<br> <li> Reset flag on complete events and progress<br> <li> Persist and restore partial data in cache </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7044/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+108/-18</a></td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
9da28f2e87 |
fix: replace variable with bracket as well (#7146)
### **User description**
- replace `$VARIABLE_NAME` OR `${VARIABLE_NAME}` with it's value.
___
### **PR Type**
Bug fix
___
### **Description**
- Support `${VAR}` bracketed variable syntax
- Escape single quotes in variable values
- Import and use `escapeSingleQuotes` utility
- Update metadata push for bracketed placeholders
___
### **Changes walkthrough** 📝
<table><thead><tr><th></th><th align="left">Relevant
files</th></tr></thead><tbody><tr><td><strong>Bug
fix</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>PanelSchemaRenderer.vue</strong><dd><code>Support
bracketed placeholders and quote escaping</code>
</dd></summary>
<hr>
web/src/components/dashboards/PanelSchemaRenderer.vue
<li>Imported <code>escapeSingleQuotes</code> from zincutils<br> <li>
Added handling for <code>${variable}</code> placeholders<br> <li>
Applied quote escaping on array and single values<br> <li> Adjusted
query replacement order
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7146/files#diff-e5376e7e77bf3aaf6590c2522d8c2dbffcc95a8006ae0d6dc0040a37825367d6">+11/-3</a>
</td>
</tr>
<tr>
<td>
<details>
<summary><strong>usePanelDataLoader.ts</strong><dd><code>Handle
bracketed variables and escape quotes</code>
</dd></summary>
<hr>
web/src/composables/dashboard/usePanelDataLoader.ts
<li>Added <code>${VARIABLE}</code> replacement alongside
<code>$VARIABLE</code><br> <li> Integrated
<code>escapeSingleQuotes</code> for value escaping<br> <li> Updated
metadata push conditions for brackets<br> <li> Ensured consistent
placeholder replacements
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7146/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+18/-9</a>
</td>
</tr>
</table></td></tr></tr></tbody></table>
___
> <details> <summary> Need help?</summary><li>Type <code>/help how to
...</code> in the comments thread for any questions about PR-Agent
usage.</li><li>Check out the <a
href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a>
for more information.</li></details>
|
||
|
|
9f86d3603e | fix: store dashboard panel cache on indexDB instead of in memory (#7135) | ||
|
|
121e4608fe |
fix: add debounce to series value update (#7142)
### **PR Type** Bug fix, Enhancement ___ ### **Description** - Throttle series hover state updates at 350ms - Clean up chart event listeners on deactivate - Dispose chart and cancel throttles on unmount - Disconnect intersection observer to avoid leaks ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>ChartRenderer.vue</strong><dd><code>Throttle hover updates and resource cleanup</code> </dd></summary> <hr> web/src/components/dashboards/panels/ChartRenderer.vue <li>Imported <code>throttle</code> from lodash and <code>onDeactivated</code> hook<br> <li> Added <code>cleanupChart</code> function to remove all listeners<br> <li> Created throttled hover state update functions<br> <li> Enhanced <code>onUnmounted</code> and <code>onDeactivated</code> cleanup logic </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7142/files#diff-353fab39cd76197438814db862c4a506636ea7e15633ee92d9269adbd97fe67c">+57/-9</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
664a05e75e |
fix: escape quote for variable values (#7134)
### **User description** - Config to enable escape quotes.  - Needs to enable it if variable value contains single quote. For example variable value is `EFhoAf&fugy=P'fG;LR;Hr=jTe3fr).p%"` then will require to escape single quote from value.  - For custom typed variables, added some validations: 1. At least one option must there. 2. At lease one option should be selected as default value. ___ ### **PR Type** Enhancement, Bug fix ___ ### **Description** - Add `escapeSingleQuotes` flag to variable config - Provide UI toggle with explanatory tooltip - Update query loader to escape quotes conditionally - Prevent removing last option and enforce default selection ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>mod.rs</strong><dd><code>Add escape_single_quotes field to config</code> </dd></summary> <hr> src/config/src/meta/dashboards/v5/mod.rs <li>Introduce <code>escape_single_quotes</code> boolean field<br> <li> Mark field as optional in <code>VariableList</code> struct </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7134/files#diff-da49585bbcb02bf0f737bb68739ebc248edd15c7ad9427c0e68f7728bb4a8c17">+2/-0</a> </td> </tr> <tr> <td> <details> <summary><strong>AddSettingVariable.vue</strong><dd><code>Enhance variable settings UI for quote escaping</code> </dd></summary> <hr> web/src/components/dashboards/settings/AddSettingVariable.vue <li>Add <code>escapeSingleQuotes</code> toggle with tooltip<br> <li> Initialize default <code>escapeSingleQuotes</code> value to false<br> <li> Disable remove button when only one option remains<br> <li> Validate at least one default selection for custom variables </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7134/files#diff-e622f54c1f7629ee67d29ed2fc87008d07eb9246767a05435cc42c3c17ce459a">+53/-1</a> </td> </tr> <tr> <td> <details> <summary><strong>usePanelDataLoader.ts</strong><dd><code>Implement conditional quote escaping in loader</code> </dd></summary> <hr> web/src/composables/dashboard/usePanelDataLoader.ts <li>Import <code>escapeSingleQuotes</code> utility<br> <li> Conditionally escape single quotes in variable values<br> <li> Apply escaping for both array and scalar values </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7134/files#diff-5a42e9493a7bcd722b88e61fd38883c4f61001bc9cafa399f65f8eafda3aace9">+14/-2</a> </td> </tr> </table></td></tr><tr><td><strong>Documentation</strong></td><td><table> <tr> <td> <details> <summary><strong>en.json</strong><dd><code>Add translation for escapeSingleQuotes</code> </dd></summary> <hr> web/src/locales/languages/en.json - Add `"escapeSingleQuotes": "Escape Single Quotes"` entry </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7134/files#diff-892aa3d75ab6e129ef9116aa21bec1b9a15ba69ce5366d2a19128078c690d824">+1/-0</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
ceb7be6bb3 | chore(deps): bump vue from 3.5.14 to 3.5.16 in /web (#7012) | ||
|
|
72b67a7128 |
fix: should throw error while validating sql query in add alert (#7120)
### **User description** This PR will throws an error when there is an error previously also we were not throwing an error but because now we dont show the editor at the time of saving we should throw an error ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Notify user upon SQL validation error - Include error details in console log - Retain dismiss call and block save ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Error handling</strong></td><td><table> <tr> <td> <details> <summary><strong>AddAlert.vue</strong><dd><code>Show notification on SQL validation error</code> </dd></summary> <hr> web/src/components/alerts/AddAlert.vue <li>Added <code>this.q.notify</code> for SQL validation error<br> <li> Updated console.log to include <code>error</code> object<br> <li> Ensured <code>dismiss()</code> still called on error </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7120/files#diff-7b426bb23e9ed0250c3877d6d97b099c42b2d20e22ddf4459915381b2233a0a8">+7/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
2d1a1bc841 |
fix: add alert redesign issues (#7097)
### **User description** This PR fixes the issues in #7080 ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Auto-scroll to first invalid alert form field - Integrate AI chat panel in SQL/VRL editor - Adjust alert grouping and condition inputs - Improve real-time & scheduled alert validation ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>AddAlert.vue</strong><dd><code>Add alert form validation & AI chat</code> </dd></summary> <hr> web/src/components/alerts/AddAlert.vue <li>Added <code>realTimeAlertRef</code>, <code>validateFormAndNavigateToErrorField</code><br> <li> Updated submission to scroll to first invalid field<br> <li> Imported <code>O2AIChat</code>, added AI toggle button & panel<br> <li> Adjusted dialog width and padding for AI mode </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7097/files#diff-7b426bb23e9ed0250c3877d6d97b099c42b2d20e22ddf4459915381b2233a0a8">+47/-6</a> </td> </tr> <tr> <td> <details> <summary><strong>FilterCondition.vue</strong><dd><code>Wrap condition inputs for AI mode</code> </dd></summary> <hr> web/src/components/alerts/FilterCondition.vue <li>Applied dynamic classes when AI chat enabled<br> <li> Wrapped selects/inputs with tooltips in AI mode<br> <li> Adjusted input widths via new CSS classes </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7097/files#diff-53916e2402d0ee094fcd63f0ec0c99ceffde4fa042f9001203d2e2e1b7709e10">+25/-6</a> </td> </tr> <tr> <td> <details> <summary><strong>FilterGroup.vue</strong><dd><code>Update filter group layout for AI</code> </dd></summary> <hr> web/src/components/alerts/FilterGroup.vue <li>Adjusted group container width/margin on AI mode<br> <li> Dynamic padding for nested items when AI enabled </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7097/files#diff-8d5a73bea3aa0b5c86d48cda4a61ee3e30f27797ac2a5add1ee8bd66c75bef23">+5/-3</a> </td> </tr> </table></td></tr><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>RealTimeAlert.vue</strong><dd><code>Enhance real-time alert validation UI</code> </dd></summary> <hr> web/src/components/alerts/RealTimeAlert.vue <li>Extended error condition for <code>silence</code> field<br> <li> Added <code>q-field--error</code> class on validation error<br> <li> Enforced <code>required</code> and custom rule on destinations </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7097/files#diff-c3ae6b47832eb33f9ca877cc7165d079de14850e5c5d43a227102ba40326b9d8">+6/-3</a> </td> </tr> <tr> <td> <details> <summary><strong>ScheduledAlert.vue</strong><dd><code>Enhance scheduled alert validation UI</code> </dd></summary> <hr> web/src/components/alerts/ScheduledAlert.vue <li>Updated error display for period and silence fields<br> <li> Added <code>q-field--error</code> on cron validation<br> <li> Enforced <code>required</code> rule on multi-select destinations </details> </td> <td><a href="https://github.com/openobserve/openobserve/pull/7097/files#diff-5e143a17ab0fa5d7817f6d9301667fb5597236f27184248c7a71728e85b8d999">+80/-35</a> </td> </tr> </table></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
|
2526059a24 |
fix: pipeline dynamic stream name issue (#7089)
1. now we have increased the stream name to 100 chars
2. this PR should allow user to add 3 different types of stream names
1. example_stream_name
2. {dynamic_stream_name_output}
3. someprefix{stream_name}somesuffix
---------
Co-authored-by: Taiming Liu <liutaiming3@gmail.com>
|
||
|
|
53fd6a439d |
fix: disable search job popup (#7050) (#7083)
1. This PR disables the search Job popup that comes after 2mins if the search is still going on |
||
|
|
813ed37efd |
fix: add alert page redesign (#6730)
1. This PR implements the add alert page latest UI revamp 2. This changes the add alert page introducing new UI with expandable / collapsable sections 3. This introduces the new condition and condition group so we now support or condition as well as condition group so user can create condition groups upto 3 level of depth 4. the functionality of add alert page is same just the UI and the conditions has been changed with this PR |
||
|
|
d604638476 |
fix: get roles api should be triggered in non enterprise versions (#7067)
1. This PR fixes the issue #7053 |
||
|
|
e55bb71b76 |
fix: upgrade node sql parser npm package (#7069)
Co-authored-by: Hengfei Yang <hengfei.yang@gmail.com> |
||
|
|
2bcae056ac |
fix: redirect short url (#7026) (#7033)
with this POC we will let FE handle all short url redirections. We keep the old routes intact for backwards compatibility --------- --------- Co-authored-by: omkark06 <omkar@zinclabs.io> |
||
|
|
0af20fd283 |
fix: fixed http partition pagination (#6879)
Co-authored-by: ShyamOOAI <shyam@openobserve.ai> |
||
|
|
07cffcc5e5 |
fix: show output format when it is pipeline destinations (#7064)
1. This PR fixes the issue #7063 |
||
|
|
8523069f9a |
fix: menu , list , item-label at global css should not have fixed width (#7009)
This PR fixes the fixed width to auto width before it was 150px which makes some menu to be 150px only |
||
|
|
27e3fbf457 |
fix: allow to select and copy series name from tooltip (#7025)
 |
||
|
|
951f5f1d15 |
fix: trellis group by config save issue (#7004)
- #6997 |
||
|
|
3c5ae41210 |
fix: add output format type for external destination(pipeline destination) (#6993)
1.This PR adds the output format to the external destination either json / ndjson , bydefault it is json --------- Co-authored-by: oasisk <ashish.j.kolhe@gmail.com> |
||
|
|
2db1d49fc3 |
fix: log page download count issue , service account description field added (#6892)
1. This PR fixes the log page download count mismatch issue so when user tries to get 1 to 100 records we are actually sending from as 1 which is incorrect because BE expects from 0 so modified we now send -1 from user input eg: user enters 1 we send it as 0 , user sends 50 send 49 this will make sure that actual records are being downloaded 2. This PR also fixes the service account issue so we dont need first name and last name for the service account so we removed that and added description in place of that , removed them in the service account list as well | #6887 #6837 |