Commit Graph
2725 Commits
Author SHA1 Message Date
Abhay Padamani 03dfc88bfb feat: default fields for add Panel and metrics page (#12509)
Design at: dashboards/default-panel-fields
2026-06-09 08:39:09 +00:00
Sai Nikhilandudev 57e57a56c9 fix: import and export functionality for score and score configs in llm evals (#12517)
Co-authored-by: udev <uddhav@openobserve.ai>
2026-06-09 05:38:24 +00:00
Abhay Padamani 8c23dd000e feat: multi-query support (#12374)
Design At:
https://github.com/openobserve/designs/tree/main/dashboards/multi-sql-query-support

Issue list : https://github.com/openobserve/openobserve/issues/11278
2026-06-08 10:51:37 +00:00
ktx-mihir edce88fd88 fix: organization management header and extend trial selection (#12477)
- Organization management header layout and extend trial selection
2026-06-08 06:44:35 +00:00
61aebff552 fix: refactor!: remove SQL mode toggle in favor of auto-detection (#12483)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Shrinath Rao <shnath@openobserve.ai>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-07 04:43:00 +00:00
Omkar Kesarkhane 945226696d fix: updated column widths in correlated logs table (#12469)
## What changed

- Added a wrap/unwrap button (toggle) in the CorrelatedLogsTable header
toolbar, matching the pattern from `logs/SearchResult.vue` (`wrap-text`
icon, `OTooltip` with `search.messageWrapContent` i18n key)
- Replaced the hard-coded 800px column `maxSize` with a dynamic cap
computed from the table container's actual width, tracked via
`ResizeObserver`
- Last-column fill: if total column widths are less than the container
and the last column is a `longTextFields` type, the remaining space is
added to it
2026-06-05 12:16:41 +00:00
Sai Nikhil 17a713fe4c fix: onlline eval bug fixes (#12462) 2026-06-05 07:26:55 +00:00
c2555d116c fix: prevent license textarea from growing and fix layout spacing (#12447)
## Summary

- **OTextarea resize**: Changed default resize behaviour from `resize-y`
to `resize-none`. `OTextarea` uses `inheritAttrs: false`, so
`style`/`class` attrs passed by consumers land on the outer wrapper
`<div>`, not the native `<textarea>`. The `resize-y` class was allowing
users to manually drag the textarea to grow it indefinitely — this
didn't exist with the previous `q-input` implementation.
- **License.vue style cleanup**: Removed `style="height: 200px"` and
`style="min-height: 150px"` from the two `OTextarea` usages. These were
being applied to the outer wrapper div (wrong element) and had no effect
on the actual textarea size. The `rows` prop already controls height
correctly.
- **Button spacing**: Added `tw:mt-3` gap between the license key
textarea and the "Update License" button.

## Test plan

- [ ] Navigate to Settings → License page with no license installed
- [ ] Verify the "Enter License Key" textarea renders at a fixed height
and cannot be resized by dragging
- [ ] Verify the "Update License" button has visible spacing below the
textarea
- [ ] Verify pasting a long license key causes scroll within the
textarea (not expansion)
- [ ] Trigger the update form (on a page with an active license) and
verify the same resize-none behaviour

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech>
Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-05 03:25:02 +00:00
Omkar Kesarkhaneandgithub-actions[bot] 20ccfb5fa0 fix: RUM - Traces e2e tracing (#12420)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-04 17:32:19 +00:00
0aab1ae261 feat: online evaluations (#12352)
- **feat(online-eval): add PipelineKind::Evaluation and dual realtime
pipeline support**
- **feat(online-eval): add provider, score_config, scorer, and
online_eval_jobs DB entities**
- **feat(online-eval): add config CRUD services and API handlers**
- **feat(online-eval): reconcile jobs into hidden evaluation pipelines**
- **feat(online-eval): add scorer preparation and execution backends**
- **feat(online-eval): write scores and evaluator traces to system
streams**
- **refactor(online-eval): remove legacy eval templates backend**
- **test(online-eval): add API integration coverage for eval resources**

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai>
2026-06-04 16:03:14 +00:00
ktx-riya 4692d592f6 fix: prevent resizing of action and row-index columns in table definitions (#12453) 2026-06-04 12:53:11 +00:00
ktx-mihir 004e320b6d fix: ux revamp add condition layout and crosslink combobox (#12443)
- Add condition layout fix
- drilldown close button alignment and size sm
- OCombobox item align center
- Crosslink combobox and input based on condition
- Actions timezone alignment
- Ai toogle expand shortcut enhance
2026-06-04 11:55:35 +00:00
aa81dc3f13 fix: OTable resize and add/remove column feature (#12433)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Shrinath Rao <shnath@openobserve.ai>
2026-06-04 09:52:51 +00:00
ktx-vaidehiandktx-mihir 2fcd670aac fix: ux revamp drawer to dialog for less fields (#12424)
Co-authored-by: ktx-mihir <mihir.patel@kiara.tech>
2026-06-04 07:17:43 +00:00
Shrinath RaoandClaude Sonnet 4.6 3df49aa284 fix: billing group icons follow applied theme color (#12442)
## Summary

Follow-up to #12380 (feat: super org).

- `plans.vue` and `BillingGroup.vue` were using `--o2-primary-color`
(hardcoded iris/blue `#575FC5`) for the new managed-billing and
org-group hero UI introduced in the super org feature
- `--o2-primary-color` is a static constant — it is never updated by the
theme system
- Replace all 13 occurrences with `--color-primary-600`, which is
dynamically regenerated by `syncO2LibraryTokens()` in `utils/theme.ts`
whenever the user selects a theme color

**Affected elements:**
- `plans.vue` — managed-billing empty state (bank icon circle + icon
color), 4 spots
- `BillingGroup.vue` — standalone invite empty state icon, "Active"
eyebrow badge, and the three membership fact cards (Invited By /
Accepted By / Member Since) icon backgrounds + colors, 9 spots

## Test plan

- [ ] Apply a non-default theme color (e.g. green) and navigate to
Billing → Plans as a child org — bank building icon and circle ring
should match the theme color
- [ ] Navigate to Billing → Organization Group as a child org — "Active"
eyebrow badge and the three sidebar fact-card icons should match the
theme color
- [ ] Verify same views look correct with the default theme and in dark
mode

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-04 05:16:09 +00:00
Omkar Kesarkhane f5aa61b6c1 fix: correlated logs table UI fix (#12437) 2026-06-03 16:03:34 +00:00
1b9c4c93e8 feat: super org (main) (#12380)
adds support for super org

---------

Signed-off-by: Yashodhan Joshi <yjdoc2@gmail.com>
Co-authored-by: Yashodhan Joshi <yjdoc2@gmail.com>
Co-authored-by: Bhargav <BJP232004@GMAIL.COM>
2026-06-03 14:27:15 +00:00
Subhra264 60ec0e0964 fix: show edit button for users in cloud version (#12432) 2026-06-03 11:33:11 +00:00
Hengfei YangandClaude Opus 4.8 2a41ad3849 fix: router proxy retry/failover on node restart (#12096) (#12425)
## Problem

Fixes #12096.

During a rolling restart / redeploy, the router intermittently returns
`502 Proxy request failed: error sending request for url
(http://<node>:5080/...)` for querier/ingester routes (e.g.
`/api/{org}/functions`). Restarting nodes one-by-one does not help.

## Root cause

The error comes from the **router's proxy** (`src/router/http/mod.rs`),
not the querier. The router picks one node from its cached node list and
proxies to it. While a node is restarting there is an unavoidable window
where:

- the node has begun graceful shutdown — it stops accepting new
connections and its pooled keep-alive connections are being closed — but
- the router has not yet processed the node's offline/leave event.
Propagation is not instant (NATS event lag), and the health-check
fallback only removes a node after `ZO_HEALTH_CHECK_FAILED_TIMES`
(default 3) consecutive failures polled every `ZO_NODE_HEARTBEAT_TTL/2`
(≈15s) → up to ~45s.

The actual defect: the proxy had **no failover**. It returned `502` on
the *first* connection error even though other healthy nodes existed, so
every request that landed on the restarting node surfaced as a
user-facing error. That's why a one-by-one restart still produced errors
— each node's restart opened its own failure window.

## Fix

Add retry-with-failover in the router proxy:

- `resolve_target` → **`resolve_candidates`**: returns the ordered
candidate node list (preferred node first via the existing dispatch
strategy, the rest as fail-over targets) instead of a single target.
- `proxy_request` and `proxy_with_body_routing` now **loop over
candidates**, rebuilding the request per node, and on a connection-level
send error fail over to the next node — up to `1 + ZO_ROUTE_MAX_RETRIES`
attempts.
- `is_retryable_send_error`: retry on `is_connect()` for **any** method
(a connect failure means the request was never processed, so it is
always safe); for idempotent **GET** also retry on timeouts / dropped
connections.
- The non-streaming body is buffered once and re-sent on each attempt.
For body-routing, the consistent-hash node stays preferred (result-cache
affinity), with the other online queriers as fallback (failover only
costs a cache miss).

## New config

- **`ZO_ROUTE_MAX_RETRIES`** — max number of other nodes to fail over to
when the selected node is unreachable. Default `2`; `0` disables retry.

## Testing

- `cargo check` (config + main crate): clean
- `cargo clippy -p openobserve --lib`: clean
- `cargo test -p openobserve --lib router::http`: **13 passed** — added
`test_order_nodes_*`, `test_max_attempts_bounds`, `test_payload_method`;
updated `test_resolve_candidates_with_base_uri`.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 11:07:12 +00:00
ktx-akshayandomkark06 0f5fe6d775 fix: prevent traces run query dropdown from closing on query execution (#12409)
Co-authored-by: omkark06 <omkar@zinclabs.io>
2026-06-03 09:43:12 +00:00
ktx-mihir 1d9a91ee98 fix: ux revamp dashboard dynamic filter overflow and getstarted text (#12428)
- Get started terms and condition text not visible
- Dynamic filters overflow
- Joins add icon center alignment
- LLM model pricing text wrap and tooltip
2026-06-03 09:39:18 +00:00
4ca42e29af feat: prebuilt template protection, per-destination templates, and correlation settings fixes (#12423)
## Summary

Combines #12414 (prebuilt template protection) and #12421 (correlation
settings + AI i18n + traces fixes).

### Prebuilt template protection + per-destination template selection
- Lets users attach a custom template to a prebuilt destination so
multiple destinations of the same type (e.g. three Slack channels) can
deliver different message bodies.
- Protects system-managed \`prebuilt_<type>\` templates from accidental
deletion (403) while still allowing edits; create with a reserved name
blocked (400).
- Adds Prebuilt/Custom badges, All/Prebuilt/Custom toggle on both
Templates and Destinations lists.
- Per-row Clone action on templates (\`Copy_of_<name>\` prefilled);
Template column on destinations list.
- Cross-type prebuilt template mismatches blocked in the dropdown (e.g.
\`prebuilt_servicenow\` cannot be selected for a Slack destination).
- Select-All fix in the shared OTable composable —
\`toggleAllRows\`/\`isAllSelected\`/\`isIndeterminate\` now respect
\`isRowSelectable\`.

Design at:
https://github.com/openobserve/designs/blob/main/alerts/prebuilt-template-protection/design.md

### Correlation settings visibility + AI i18n + traces tab fixes
- **Correlation Settings tab** always visible for enterprise: removed
unnecessary \`service_streams_enabled\` guard — route was always
registered, only the nav item was incorrectly gated.
- **Cross-alert fingerprint groups** hidden when org-level dedup is
disabled; save payload sanitises \`alert_fingerprint_groups\` to \`[]\`
when cross-alert dedup is off.
- **AI suggestion cards** use i18n prompt keys
(\`t('aiAssistant.capabilities.{id}.prompt')\`) instead of hardcoded
English — prompt keys added to all 12 locale files.
- **LLM Insights / Sessions tabs** always shown when \`showLLMUI\` is
enabled; org-switch re-mounts both components via \`:key\`.
- **LLMInsightsDashboard** layout, background, and empty-state alignment
fixed.

Fixes openobserve/o2-enterprise#1850, openobserve/o2-enterprise#1851,
openobserve/o2-enterprise#1852

## Changes

| Layer | File | What |
|---|---|---|
| Backend | \`src/service/alerts/templates.rs\` |
\`is_prebuilt_template_name()\` helper; block create with reserved name;
block delete of prebuilt; edit allowed. |
| Backend | \`src/service/db/alerts/templates.rs\` | New error variants:
\`PrebuiltReadOnly\` (403), \`ReservedName\` (400). |
| Backend | \`src/handler/http/request/alerts/templates.rs\` | HTTP
error mapping + two unit tests. |
| Backend | \`src/handler/http/models/destinations.rs\` | Public
Template DTO carries \`isPrebuilt: bool\`. |
| Frontend | \`web/src/components/alerts/AddDestination.vue\` | Template
dropdown for prebuilt destinations with sentinel-backed Default option;
edit-mode remap; i18n for all label strings. |
| Frontend | \`web/src/composables/usePrebuiltDestinations.ts\` |
\`templateOverride\` param on create/update; empty → backend default. |
| Frontend | \`web/src/components/alerts/TemplateList.vue\` |
Prebuilt/Custom badges, Clone action, delete-blocked for prebuilts,
All/Prebuilt/Custom toggle, prebuilts excluded from Select All. |
| Frontend | \`web/src/components/alerts/AddTemplate.vue\` | \`isClone\`
prop — pre-fill without entering update mode. |
| Frontend | \`web/src/components/alerts/AlertsDestinationList.vue\` |
New Template column (ellipsis + tooltip, Default badge),
All/Prebuilt/Custom toggle. |
| Frontend | \`web/src/lib/core/Table/composables/useTableSelection.ts\`
+ \`OTable.vue\` | \`selectableRows()\` helper; Select All respects
\`isRowSelectable\`; getter pattern restored for reactivity. |
| Frontend | \`web/src/ts/interfaces/alert.ts\` |
\`Template.isPrebuilt?: boolean\`. |
| Frontend |
\`web/src/components/alerts/OrganizationDeduplicationSettings.vue\` |
Hide fingerprint groups when org dedup disabled; sanitise payload. |
| Frontend | \`web/src/components/settings/index.vue\` | Remove
\`service_streams_enabled\` guard from Correlation Settings nav item. |
| Frontend | \`web/src/plugins/traces/Index.vue\` | Remove
\`hasLLMStreams\` guard from LLM Insights / Sessions tabs. |
| Frontend | \`web/src/plugins/traces/LLMInsightsDashboard.vue\` +
\`SessionsList.vue\` | \`:key\` on org identifier for re-mount on org
switch; layout fixes. |
| Frontend | \`web/src/plugins/traces/SearchBar.vue\` | AI suggestion
cards use i18n prompt keys. |
| Frontend | \`web/src/components/ai-assistant/welcome/\` | Capability
card prompts via i18n; all 12 locale files updated. |
| Frontend | \`web/src/locales/languages/en.json\` (+ 10 other locales)
| New keys: \`filter{All,Prebuilt,Custom}\`, \`templateDefaultBadge\`,
\`prebuiltBadge\`, \`prebuiltBadgeHint\`, \`customBadge\`, \`clone\`,
\`cloneTitle\`, \`systemReadOnly\`, \`templateDefaultOption\`,
\`templateHelp\`; toast key moved to \`alert_destinations.saved\`. |

## Compatibility
- **No schema migration.** "Is this a system template" is derived from
the name matching \`prebuilt_<canonical_type>\` where canonical types
are the eight registered in \`config/prebuilt-destinations.json\`.
- **No ENT changes needed.** Verified the enterprise tree does not
reference \`TemplateError\`, the public Template DTO, or the new helper.
- **API additive:** \`GET /alerts/templates\` response gains
\`isPrebuilt: bool\`.
- **API breaking (narrow):**
- \`POST /alerts/templates\` rejects the eight canonical reserved names
with 400.
- \`DELETE /alerts/templates/{name}\` rejects the eight canonical names
with 403.

## Test plan
- [x] \`cargo test --lib -p openobserve -- prebuilt_read_only
reserved_name\` — both pass
- [x] \`cargo check --bin openobserve\` — clean
- [x] \`vue-tsc --noEmit\` — exit 0
- [ ] Create 3 Slack destinations — each can be assigned a different
custom template
- [ ] Template dropdown for a Slack destination shows only custom
templates + Default sentinel (no \`prebuilt_servicenow\` etc.)
- [ ] Attempting to delete a \`prebuilt_\` template returns a 403 toast
- [ ] Attempting to create a template named \`prebuilt_slack\` returns a
400 error
- [ ] Clone button pre-fills \`Copy_of_<name>\` and saves as a new
template
- [ ] Select All on a mixed prebuilt/custom template page: prebuilt rows
unchecked, custom rows toggled
- [ ] Enterprise build: Correlation Settings visible in sidebar without
\`service_streams_enabled\`
- [ ] Correlation Settings: disable org dedup → fingerprint groups
section disappears; save → payload has empty
\`alert_fingerprint_groups\`
- [ ] Switch UI language → AI home suggestion cards send prompt in that
language
- [ ] Org with no LLM streams: LLM Insights + Sessions tabs still
visible with correct empty state
- [ ] Switch orgs on LLM Insights → data reloads for new org

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-03 08:30:27 +00:00
ktx-mihir c52764811d fix: ux revamp user section layout and organization actions icon (#12413)
- Organizations actions icon not visible
- User section checkbox deselect not working
- Traces session dropdown fix
- Tooltip for stream field item 
- New dashboard save button loading
2026-06-02 18:34:05 +00:00
ktx-vaidehi 184f6a5e75 fix: ux revamp on edit panel not getting config value (#12406) 2026-06-02 13:39:19 +00:00
Subhra264 452b7c00db fix: service now and opsgenie integration bugs (#12000)
Addresses https://github.com/openobserve/openobserve/issues/11930 (1st
and 2nd issues)
2026-06-02 12:21:17 +00:00
ktx-mihirandktx-vaidehi c446ba04ac fix: ux revamp input validation v1 (#12399)
- ux revamp Input validation v1

---------

Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech>
2026-06-02 11:21:24 +00:00
ktx-vaidehi edb1f799de fix: ux revamp toast loader (#12403) 2026-06-02 09:38:28 +00:00
Bhargav 9c51524029 fix: Logs improvement (#12400) 2026-06-02 07:41:47 +00:00
dependabot[bot] 010714c139 chore(deps): bump js-cookie from 3.0.5 to 3.0.7 in /web (#12098)
Bumps [js-cookie](https://github.com/js-cookie/js-cookie) from 3.0.5 to
3.0.7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/js-cookie/js-cookie/releases">js-cookie's
releases</a>.</em></p>
<blockquote>
<h2>v3.0.7</h2>
<ul>
<li>Prevent cookie attribute injection: CVE-2026-46625 (eb3c40e)</li>
<li>Add <code>Partitioned</code> attribute to readme (b994768)</li>
<li>Publish to npm registry via trusted publisher exclusively
(4dc71be)</li>
<li>Ensure consistent behaviour for <code>get('name')</code> +
<code>get()</code> (1953d30)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/17bacba0171dd022728d8fdeba3203c60791bf58"><code>17bacba</code></a>
Craft v3.0.7 release</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/adb823cb7e95ead47f3af4d4951e589acbde2077"><code>adb823c</code></a>
Fix release workflow halting at <code>git tag</code></li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/5f9e759b07d2752e8407a3a43fb5f879bf384c5e"><code>5f9e759</code></a>
May remove Git user config from release workflow</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/6ac921184c7b3b7d9431c88707f56521acd72ab4"><code>6ac9211</code></a>
Fix release workflow not able to push commit + tag</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/2278bc55e1804c4c2d9bd2110a9b449949a52751"><code>2278bc5</code></a>
Fix missing package version bump</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/eb3c40e89731e99b8970faaf35ddad249c6c0020"><code>eb3c40e</code></a>
Prevent cookie attribute injection</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/f6f157f430d707d2ffd0c9c9138227a6cea564e5"><code>f6f157f</code></a>
Bump globals from 17.5.0 to 17.6.0</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/f409d022da50a0c6fa8724f087fbc50fab9a9533"><code>f409d02</code></a>
Bump eslint from 10.2.0 to 10.3.0</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/a686883c03a754c04546cfc1653911a70a640b40"><code>a686883</code></a>
Bump protobufjs in the npm_and_yarn group across 1 directory</li>
<li><a
href="https://github.com/js-cookie/js-cookie/commit/c6112d2d4f2881a12aaf89d9e2996ef6870eb6d0"><code>c6112d2</code></a>
Bump <code>@​protobufjs/utf8</code> in the npm_and_yarn group across 1
directory</li>
<li>Additional commits viewable in <a
href="https://github.com/js-cookie/js-cookie/compare/v3.0.5...v3.0.7">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~GitHub%20Actions">GitHub Actions</a>, a new
releaser for js-cookie since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=js-cookie&package-manager=npm_and_yarn&previous-version=3.0.5&new-version=3.0.7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/openobserve/openobserve/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-02 05:26:17 +00:00
Bhargav b5eba8eb99 fix: o2 ai prompt editor fix (#12397) 2026-06-02 05:15:44 +00:00
Bhargav 0859094cdb fix: Issue ent 1824 ux revamp (#12382) 2026-06-01 17:55:39 +00:00
ktx-mihir b1201a972b fix: ux revamp filter overflow and add panel build filed height (#12389)
-  Dashboards stream field truncate issue
-  Header button hover effect remove
-  Add name of the Panel Validation 
-  Dashboards filters text wrap 
-  Add Panel x-axis build height and overflow
2026-06-01 13:16:19 +00:00
Bhargav cf741a65c7 fix: add field to table for timestamp column added missing option in … (#12385)
…table view
2026-06-01 12:53:53 +00:00
ktx-vaidehi 97c7a273fd fix: ux revamp search input clearable (#12388) 2026-06-01 12:52:50 +00:00
ktx-vaidehi f8249d341c fix: ux revamp search input component (#12383) 2026-06-01 12:03:44 +00:00
ktx-akshay 034f329575 fix: apply checkbox color prop logs and traces (#12379)
…tyles
2026-06-01 09:16:26 +00:00
c6179b91c5 fix: env key was not getting extracted from rum event (#12349)
#12351 

Fixed RUM middleware in `middleware_data.rs` to extract
`ootags`/`o2tags` from the request body when the field is not present in
URL query parameters. Previously, the middleware only inspected query
parameters for these fields, but the RUM SDK sends them in the request
body.

## Why

User logs confirmed the issue: `ootags raw=None, o2tags raw=None`
appeared consistently in the middleware logs even when the RUM SDK
included tags like `env`, `service`, `version`, and `sdk_version`. Geo
keys (which come from a different extraction path) were unaffected,
narrowing the root cause to query-param-only parsing of
`ootags`/`o2tags`. The RUM SDK sends these tags in the POST body, not as
query string parameters.

## Approach

Added body-parsing logic to read and decode the request body when
`ootags`/`o2tags` are absent from query parameters. The body is parsed
once using `url::form_urlencoded` and merged into the existing key-value
map before the `filter_tags` step runs, ensuring the same downstream
pipeline works unchanged.

---------

Co-authored-by: Neha P <neha@openobserve.ai>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Co-authored-by: Shrinath Rao <shnath@openobserve.ai>
Co-authored-by: Neha P <144308844+neha00290@users.noreply.github.com>
2026-06-01 07:15:09 +00:00
Subhra264 9a1ed606aa feat: org level ingestion token (#11691)
Design at: observability/org-level-ingestion-token
2026-06-01 06:12:06 +00:00
Sai Nikhil 8ba15cecac fix: make show llm true (#11979) 2026-06-01 05:17:00 +00:00
dependabot[bot] 8f0e9a1fff build(deps): bump webpack-dev-server from 5.2.2 to 5.2.4 in /web (#11977) 2026-05-31 08:55:26 +08:00
yujinqiu 833b2bdc8e feat(security): enforce strong password policy (#12327) 2026-05-31 08:53:14 +08:00
dependabot[bot]andHengfei Yang e9b1bd9f7e chore(deps): bump tmp from 0.2.5 to 0.2.6 in /web (#12285)
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.5 to 0.2.6.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/raszi/node-tmp/commit/41f71598d03f104a67e0448a7cb9bd4efcdd5980"><code>41f7159</code></a>
Bump up the version</li>
<li><a
href="https://github.com/raszi/node-tmp/commit/efa4a06f24374797ae32ab2b6ae39b7a611ae429"><code>efa4a06</code></a>
Merge commit from fork</li>
<li><a
href="https://github.com/raszi/node-tmp/commit/7ef2728ce0211b8110b2033dfe62eaf030341acf"><code>7ef2728</code></a>
Check for relative values</li>
<li>See full diff in <a
href="https://github.com/raszi/node-tmp/compare/v0.2.5...v0.2.6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tmp&package-manager=npm_and_yarn&previous-version=0.2.5&new-version=0.2.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/openobserve/openobserve/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Hengfei Yang <hengfei.yang@gmail.com>
2026-05-29 17:11:04 +00:00
ktx-riya b84da6475f fix: ux revamp toast close position alignment and time pause-resume functionality (#12359) 2026-05-29 17:07:56 +00:00
ktx-mihir e82ef2a2b7 fix: pipeline view and table chart overlap (#12362)
- Main menu width and spacing

- Stream loader center 

- Stream details hover color fix 

- Pipeline view 

- Sticky column table overlap
2026-05-29 17:07:23 +00:00
ktx-vaidehiandktx-riya b7ffc10a5d fix: ux revamp logs stream single or multi select (#12350)
Co-authored-by: ktx-riya <riya.kukadiya@kiara.tech>
2026-05-29 17:07:08 +00:00
424425ce1d fix: o2 ai assistant revamp (#12343)
Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-29 17:06:33 +00:00
76959751f7 fix: FE shortcut support (#11866)
Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-29 17:05:44 +00:00
dependabot[bot]andHengfei Yang 6054aca6e7 chore(deps): bump systeminformation from 5.31.1 to 5.31.6 in /web (#11796)
Bumps
[systeminformation](https://github.com/sebhildebrandt/systeminformation)
from 5.31.1 to 5.31.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sebhildebrandt/systeminformation/releases">systeminformation's
releases</a>.</em></p>
<blockquote>
<h2>v5.31.6</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/sebhildebrandt/systeminformation/compare/v5.31.5...v5.31.6">https://github.com/sebhildebrandt/systeminformation/compare/v5.31.5...v5.31.6</a></p>
<h2>v5.31.5</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/sebhildebrandt/systeminformation/compare/v5.31.4...v5.31.5">https://github.com/sebhildebrandt/systeminformation/compare/v5.31.4...v5.31.5</a></p>
<h2>v5.31.4</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/sebhildebrandt/systeminformation/compare/v5.31.3...v5.31.4">https://github.com/sebhildebrandt/systeminformation/compare/v5.31.3...v5.31.4</a></p>
<h2>v5.31.3</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/sebhildebrandt/systeminformation/compare/v5.31.2...v5.31.3">https://github.com/sebhildebrandt/systeminformation/compare/v5.31.2...v5.31.3</a></p>
<h2>v5.31.2</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/sebhildebrandt/systeminformation/compare/v5.31.1...v5.31.2">https://github.com/sebhildebrandt/systeminformation/compare/v5.31.1...v5.31.2</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sebhildebrandt/systeminformation/blob/master/CHANGELOG.md">systeminformation's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>Major Changes - Version 5</h2>
<h4>New Functions</h4>
<ul>
<li><code>audio()</code> detailed audio information</li>
<li><code>bluetoothDevices()</code> detailed information detected
bluetooth devices</li>
<li><code>dockerImages()</code> detailed information docker images</li>
<li><code>dockerVolumes()</code> detailed information docker
volumes</li>
<li><code>printers()</code> detailed printer information</li>
<li><code>usb()</code> detailed USB information</li>
<li><code>wifiInterfaces()</code> detected Wi-Fi interfaces</li>
<li><code>wifiConnections()</code> active Wi-Fi connections</li>
</ul>
<h4>Breaking Changes</h4>
<p><strong>Be aware</strong>, that the new version 5.x <strong>is NOT
fully backward compatible</strong> to
version 4.x ...</p>
<p>We had to make <strong>several interface changes</strong> to keep
systeminformation as
consistent as possible. We highly
<a href="https://systeminformation.io/changes.html">recommend to go
through the complete list</a>
and adapt your own code to be again compatible to the new version 5.</p>
<table>
<thead>
<tr>
<th>Function</th>
<th>Old</th>
<th>New (V5)</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>unsupported values</td>
<td>-1</td>
<td>null</td>
<td>values which are unknown or<!-- raw HTML omitted -->unsupported on
platform</td>
</tr>
<tr>
<td><code>battery()</code></td>
<td>hasbattery<!-- raw HTML omitted -->cyclecount<!-- raw HTML omitted
-->ischarging<!-- raw HTML omitted -->designedcapacity<!-- raw HTML
omitted -->maxcapacity<!-- raw HTML omitted -->acconnected<!-- raw HTML
omitted -->timeremaining</td>
<td>hasBattery<!-- raw HTML omitted -->cycleCount<!-- raw HTML omitted
-->isCharging<!-- raw HTML omitted -->designedCapacity<!-- raw HTML
omitted -->maxCapacity<!-- raw HTML omitted -->acConnected<!-- raw HTML
omitted -->timeRemaining</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>blockDevices()</code></td>
<td>fstype</td>
<td>fsType</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>cpu()</code></td>
<td>speedmin<!-- raw HTML omitted -->speedmax</td>
<td>speedMin<!-- raw HTML omitted -->speedMax</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>cpu().speed</code><!-- raw HTML omitted
--><code>cpu().speedMin</code><!-- raw HTML omitted
--><code>cpu().speedMax</code></td>
<td>string values</td>
<td>now returning<!-- raw HTML omitted -->numerical values</td>
<td>better value handling</td>
</tr>
<tr>
<td><code>cpuCurrentspeed()</code></td>
<td></td>
<td>cpuCurrentSpeed()</td>
<td>function name changed<!-- raw HTML omitted -->pascalCase
conformity</td>
</tr>
<tr>
<td><code>currentLoad()</code></td>
<td>avgload<!-- raw HTML omitted -->currentload<!-- raw HTML omitted
-->currentload_user<!-- raw HTML omitted -->currentload_system<!-- raw
HTML omitted -->currentload_nice<!-- raw HTML omitted
-->currentload_idle<!-- raw HTML omitted -->currentload_irq<!-- raw HTML
omitted -->raw_currentload</td>
<td>avgLoad<!-- raw HTML omitted -->currentLoad<!-- raw HTML omitted
-->currentLoadUser<!-- raw HTML omitted -->currentLoadSystem<!-- raw
HTML omitted -->currentLoadNice<!-- raw HTML omitted
-->currentLoadIdle<!-- raw HTML omitted -->currentLoadIrq<!-- raw HTML
omitted -->rawCurrentLoad</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>dockerContainerStats()</code></td>
<td>mem_usage<!-- raw HTML omitted -->mem_limit<!-- raw HTML omitted
-->mem_percent<!-- raw HTML omitted -->cpu_percent<!-- raw HTML omitted
-->cpu_stats<!-- raw HTML omitted -->precpu_stats<!-- raw HTML omitted
-->memory_stats</td>
<td>memUsage<!-- raw HTML omitted -->memLimit<!-- raw HTML omitted
-->memPercent<!-- raw HTML omitted -->cpuPercent<!-- raw HTML omitted
-->cpuStats<!-- raw HTML omitted -->precpuStats<!-- raw HTML omitted
-->memoryStats</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>dockerContainerProcesses()</code></td>
<td>pid_host</td>
<td>pidHost</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>graphics().display</code></td>
<td>pixeldepth<!-- raw HTML omitted -->resolutionx<!-- raw HTML omitted
-->resolutiony<!-- raw HTML omitted -->sizex<!-- raw HTML omitted
-->sizey</td>
<td>pixelDepth<!-- raw HTML omitted -->resolutionX<!-- raw HTML omitted
-->resolutionY<!-- raw HTML omitted -->sizeX<!-- raw HTML omitted
-->sizeY</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>networkConnections()</code></td>
<td>localaddress<!-- raw HTML omitted -->localport<!-- raw HTML omitted
-->peeraddress<!-- raw HTML omitted -->peerport</td>
<td>localAddress<!-- raw HTML omitted -->localPort<!-- raw HTML omitted
-->peerAddress<!-- raw HTML omitted -->peerPort</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>networkInterfaces()</code></td>
<td>carrier_changes</td>
<td>carrierChanges</td>
<td>pascalCase conformity</td>
</tr>
<tr>
<td><code>processes()</code></td>
<td>mem_vsz<!-- raw HTML omitted -->mem_rss<!-- raw HTML omitted
-->pcpu<!-- raw HTML omitted -->pcpuu<!-- raw HTML omitted -->pcpus<!--
raw HTML omitted -->pmem</td>
<td>memVsz<!-- raw HTML omitted -->memRss<!-- raw HTML omitted
-->cpu<!-- raw HTML omitted -->cpuu<!-- raw HTML omitted -->cpus<!-- raw
HTML omitted -->mem</td>
<td>pascalCase conformity<!-- raw HTML omitted -->renamed
attributes</td>
</tr>
<tr>
<td><code>processLoad()</code></td>
<td>result as object</td>
<td>result as array of objects</td>
<td>function now allows to provide more than<!-- raw HTML omitted -->one
process (as a comma separated list)</td>
</tr>
<tr>
<td><code>services()</code></td>
<td>pcpu<!-- raw HTML omitted -->pmem</td>
<td>cpu<!-- raw HTML omitted -->mem</td>
<td>renamed attributes</td>
</tr>
<tr>
<td><code>vbox()</code></td>
<td>HPET<!-- raw HTML omitted -->PAE<!-- raw HTML omitted -->APIC<!--
raw HTML omitted -->X2APIC<!-- raw HTML omitted -->ACPI<!-- raw HTML
omitted -->IOAPIC<!-- raw HTML omitted -->biosAPICmode<!-- raw HTML
omitted -->TRC</td>
<td>hpet<!-- raw HTML omitted -->pae<!-- raw HTML omitted -->apic<!--
raw HTML omitted -->x2Apic<!-- raw HTML omitted -->acpi<!-- raw HTML
omitted -->ioApic<!-- raw HTML omitted -->biosApicMode<!-- raw HTML
omitted -->rtc</td>
<td>pascalCase conformity</td>
</tr>
</tbody>
</table>
<h4>Other Improvements and Changes</h4>
<ul>
<li><code>baseboard()</code>: added memMax, memSlots</li>
<li><code>bios()</code>: added language and features (linux)</li>
<li><code>blockDevices()</code> added raid group member (linux)</li>
<li><code>cpu()</code>: extended AMD processor list</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/da1cbf5eb09907cf5c3431f4c9ea441b7a227617"><code>da1cbf5</code></a>
5.31.6</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/87dbb60f98dd39452bda211da0b6c63e4a7db898"><code>87dbb60</code></a>
fix: smaller issues</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/1d1bddf81267a3726b1200fa05ebe04b749f8d64"><code>1d1bddf</code></a>
fix: smaller issues</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/f69576f8da71571a988e7f430b068952c141bea9"><code>f69576f</code></a>
fix: networkInterfaces() ci wip</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/78624d1567d0410b3b6781caaf2441c4c32a810c"><code>78624d1</code></a>
fix: networkInterfaces() ci</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/ed1cac537c59763301d802ad1b55b4b8581e7553"><code>ed1cac5</code></a>
5.31.5</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/4dd5aa91492ee4953109135dabab9adbedb9df8e"><code>4dd5aa9</code></a>
netStats() netstat command adaption (mac OS)</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/59360e6e2a4ffd6b02d868716b3091e469be9264"><code>59360e6</code></a>
5.31.4</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/3ef3f3befc0218c0ac4cdc975ed328f7e5318867"><code>3ef3f3b</code></a>
diskLayout() USB tahoe compatibility (mac OS)</li>
<li><a
href="https://github.com/sebhildebrandt/systeminformation/commit/8edd13034fe729481cefc264ea20bb033a1a31be"><code>8edd130</code></a>
5.31.3</li>
<li>Additional commits viewable in <a
href="https://github.com/sebhildebrandt/systeminformation/compare/v5.31.1...v5.31.6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=systeminformation&package-manager=npm_and_yarn&previous-version=5.31.1&new-version=5.31.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/openobserve/openobserve/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Hengfei Yang <hengfei.yang@gmail.com>
2026-05-29 10:51:44 +00:00
ktx-riyaandktx-vaidehi 2af558441a fix: theme switching in revamped (#12340)
Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech>
2026-05-29 10:17:10 +00:00
ktx-mihir cf9c0ea179 fix: dark mode text area and pagination (#12339)
- SDR Save Settings trigger point discrepency 
- Edit the existing alert - Ai icon is overlapping
- On stream field Scroller is not working
- With other languages, the Side Navigation UI is broken
- Search box dont having any border (List search view )
- text area color not looks proper
- Pipeline history - pagination is not working properly
- iam page default pagination value change
2026-05-28 16:07:21 +00:00