mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-05 16:10:43 +00:00
### **PR Type**
Enhancement, Tests
___
### **Description**
- Introduce regex-based histogram interval replacer.
- Add comprehensive unit tests covering SQL scenarios.
- Replace AST parsing in ViewPanel.vue with replacer.
___
### Diagram Walkthrough
```mermaid
flowchart LR
A["histogramIntervalReplacer.ts"] --> B["ViewPanel.vue"]
C["histogramIntervalReplacer.spec.ts"] --> A
```
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant
files</th></tr></thead><tbody><tr><td><strong>Tests</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>histogramIntervalReplacer.spec.ts</strong><dd><code>Add
unit tests for histogram replacer</code>
</dd></summary>
<hr>
web/src/utils/dashboard/histogramIntervalReplacer.spec.ts
<ul><li>Add unit tests for basic interval replacement<br> <li> Cover
whitespace, field, and case variations<br> <li> Include complex SQL and
edge case scenarios</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/10133/files#diff-6f69332f209c616ca342743baefeb5a6c2dc6956677b062bb5609c0c32af505a">+424/-0</a>
</td>
</tr>
</table></td></tr><tr><td><strong>Enhancement</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>histogramIntervalReplacer.ts</strong><dd><code>Implement
regex histogram interval replacement</code>
</dd></summary>
<hr>
web/src/utils/dashboard/histogramIntervalReplacer.ts
<ul><li>Implement replaceHistogramInterval using regex<br> <li> Support
adding and removing intervals<br> <li> Preserve original query
formatting and whitespace</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/10133/files#diff-be10dd10d2ebb4bee577aa834243012bc20306dea32ebc7083f72ef27a8d95f2">+67/-0</a>
</td>
</tr>
<tr>
<td>
<details>
<summary><strong>ViewPanel.vue</strong><dd><code>Integrate histogram
replacer in ViewPanel</code>
</dd></summary>
<hr>
web/src/components/dashboards/viewPanel/ViewPanel.vue
<ul><li>Import replaceHistogramInterval util<br> <li> Replace AST-based
logic with replacer<br> <li> Update queries only when changed</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/10133/files#diff-e7b26fbbfe7ae57f50377c0f002155df17109ea54708b0f134dd2005356b2930">+7/-45</a>
</td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___