Plugins 〉OpenSearch


Developer

Grafana Labs

Sign up to receive occasional product news and updates:



Data Source
grafana

OpenSearch

Documentation →

OpenSearch data source plugin

Access data source plugin documentation here

Instructions for plugin setup, testing, and contributing can be found in Contributing.md

Installing OpenSearch on Grafana Cloud:

For more information, visit the docs on plugin installation.

Change Log

All notable changes to this project will be documented in this file.

2.31.1

  • Lucene logs: Include logs in exception for bucketAggs in #824
  • Add title to data links in #780
  • Update gitignore for yarn files in #810
  • Upgrade yarn to v4.10.3 in #801
  • Chore: Move docs to docs/sources to enable publishing to website in #803
  • Update workflows and templates in #798
  • Update dependabot groups in #797
  • Bump github.com/grafana/grafana-plugin-sdk-go from 0.280.0 to 0.281.0 in #825
  • Bump @typescript-eslint/parser from 8.40.0 to 8.44.1 in #811
  • Bump the npm-patch-dev-dependencies group with 3 updates in #808
  • Bump @testing-library/jest-dom from 6.6.4 to 6.8.0 in #799
  • Bump github.com/grafana/grafana-aws-sdk from 1.2.0 to 1.3.0 in #806
  • Bump github.com/grafana/grafana-plugin-sdk-go from 0.279.0 to 0.280.0 in #804
  • Bump actions/stale from 9 to 10 in #785
  • Bump actions/setup-node from 4 to 5 in #786
  • Bump webpack from 5.100.2 to 5.101.3 in #796
  • Bump @eslint/js from 9.32.0 to 9.34.0 in #795
  • Bump jest-environment-jsdom from 30.0.5 to 30.1.2 in #792

2.31.0

  • PPL Language Support part 2 in #772
  • Docs: Add pdc section in #783
  • CD: Publish github release as not draft in #793
  • Dependency updates:
    • Bump @types/semver from 7.7.0 to 7.7.1 in #790
    • Bump @grafana/plugin-e2e from 2.1.8 to 2.1.12 in #789
    • update ci go version to match go.mod in #787

2.30.0

  • PPL Query Editor: Add modal with sample queries in #755
  • Dependency updates:
    • Bump @babel/core from 7.28.0 to 7.28.3 in #774
    • Bump github.com/grafana/grafana-aws-sdk from 1.1.1 to 1.2.0 in #776
    • Bump @types/node from 22.17.1 to 22.17.2 in #766
    • Bump @typescript-eslint/parser from 8.39.1 to 8.40.0 in #773
    • Bump github.com/grafana/grafana-aws-sdk from 1.1.0 to 1.1.1 in #761
    • Bump github.com/grafana/grafana-plugin-sdk-go from 0.278.0 to 0.279.0 in #771
    • Bump github.com/stretchr/testify from 1.10.0 to 1.11.0 in #770
    • Bump copy-webpack-plugin from 13.0.0 to 13.0.1 in #765
    • Bump @typescript-eslint/parser from 8.38.0 to 8.39.0 in #764
    • Bump eslint-plugin-prettier from 5.5.1 to 5.5.4 in #760
    • Bump @types/node from 22.16.5 to 22.17.1 in #763
    • Bump @typescript-eslint/eslint-plugin from 8.37.0 to 8.38.0 in #756
    • Bump @playwright/test from 1.52.0 to 1.54.2 in #757
    • Bump @grafana/plugin-ui from 0.10.7 to 0.10.9 in #753
    • Bump eslint-webpack-plugin from 5.0.1 to 5.0.2 in #752
    • Bump jest from 30.0.3 to 30.0.5 in #751
    • Bump @testing-library/dom from 10.4.0 to 10.4.1 in #750

2.29.1

  • Check status code before decoding results in #734
  • Tweak dependabot schedule in #735
  • Fix dependabot ignore location for npm dependencies in #736
  • Dependency updates
    • Bump jest and @types/jest in #729
    • Bump @swc/core from 1.13.0 to 1.13.2 in #730
    • Bump @swc/core from 1.13.2 to 1.13.3 in #742
    • Bump @grafana/plugin-e2e from 2.1.6 to 2.1.7 in #714
    • Bump github.com/grafana/grafana-aws-sdk from 1.0.6 to 1.1.0 in #740
    • Bump jest-environment-jsdom from 30.0.4 to 30.0.5 iin #744
    • Bump @testing-library/jest-dom from 6.6.3 to 6.6.4 in #743

2.29.0

  • Feature: PPL language support in #731

2.28.1

  • Use csv format instead of pipe to interpolate variables in ppl queries in #721
  • Dependency updates
    • Bump @swc/core from 1.11.24 to 1.13.0 in #706
    • Bump eslint-plugin-prettier from 5.4.0 to 5.5.1 in #709
    • Bump eslint-config-prettier from 10.1.5 to 10.1.8 in #713
    • Bump @babel/core from 7.27.1 to 7.28.0 in #708
    • Bump @typescript-eslint/eslint-plugin from 8.32.1 to 8.37.0 in #710
    • Bump eslint-plugin-jsdoc from 50.6.14 to 51.4.1 in #707
    • Bump @types/node from 22.16.4 to 22.16.5 in #715
    • Bump github.com/grafana/grafana-aws-sdk from 1.0.5 to 1.0.6 in #726

2.28.0

  • Fix: process percentile metric queries to display values on the frontend in #693
  • Dependencies: Add @reduxjs/toolkit to ignore list in #694
  • Add support for auto-merging dependabot updates in #667
  • Update policies needed for OpenSearch Serverless in #678
  • Remove pr_commands in #677
  • Chore: Update CONTRIBUTING.md with release instructions by @idastambuk in #666
  • Update for new sigv4 middleware by @njvrzm in #675
  • Dependency updates
    • Bump webpack from 5.99.8 to 5.100.2 in #702
    • Bump @typescript-eslint/parser from 8.32.1 to 8.37.0 in #704
    • Bump @grafana/plugin-e2e from 2.0.2 to 2.1.6 in #701
    • Bump jest-environment-jsdom from 30.0.0 to 30.0.4 in #700
    • Bump @grafana/eslint-config from 8.0.0 to 8.1.0 in #703
    • Bump @types/node from 22.15.17 to 22.16.4 in #698
    • Bump lefthook from 1.11.12 to 1.12.2 in #699
    • Bump sass from 1.88.0 to 1.89.2 in #697
    • Bump @swc/jest from 0.2.38 to 0.2.39 in #696
    • Bump @types/lodash from 4.17.16 to 4.17.20 in #695
    • Bump jest-environment-jsdom from 29.7.0 to 30.0.0 in #690
    • Bump cspell from 9.0.1 to 9.1.2 in #689
    • Bump eslint from 9.26.0 to 9.30.0 in #692
    • Bump @grafana/aws-sdk from 0.7.0 to 0.7.1 in #691
    • Bump glob from 11.0.2 to 11.0.3 in #688
    • Bump prettier from 3.5.3 to 3.6.2 in #687
    • Bump @stylistic/eslint-plugin-ts from 4.2.0 to 4.4.1 in #686
    • Bump @eslint/js from 9.26.0 to 9.29.0 in #685
    • Bump the grafana-dependencies group with 4 updates in #682
    • Bump github.com/grafana/grafana-aws-sdk from 1.0.2 to 1.0.5 in #680
    • Bump github.com/grafana/grafana-plugin-sdk-go from 0.277.1 to 0.278.0 in #681

2.27.0

  • Add execution hint support to terms aggregation by @enawar-knowunity in #639
  • Chore: migrate to github actions for publishing in #652

2.26.1

  • Bugfix: Add support for Elasticsearch 6.8 by handling hits.total as number by @ranyhb in #643
  • Bump the all-node-dependencies group across 1 directory with 11 updates in #644
  • Bump github.com/grafana/grafana-plugin-sdk-go from 0.277.0 to 0.277.1 in the all-go-dependencies group in #637

2.26.0

  • Logs: Add total hits to metadata in #630

  • Bugfix: Support ordering by percentiles and extended stats in #627

  • Chore:Update instructions for local development with Docker in #629

  • Dependencies: Bump the all-go-dependencies group across 1 directory with 2 updates in #605

  • Dependencies: Bump golang.org/x/net from 0.36.0 to 0.38.0 in the go_modules group in #608

  • Dependencies: Bump the all-node-dependencies group across 1 directory with 32 updates in #624

2.25.0

  • Chore: Cleanup Github actions files and add zizmor config in #622
  • Use vault to generate token and use get-vault-secrets@main in #625 and #626
  • Run query on shift+enter in #616
  • Allow PPL to be enabled on OpenSearch Serverless in #611
  • Update min version of Grafana in plugin.json in #609

2.24.0

  • Query Editor: UI improvements and Lucene query type selection improvements in #583
  • Refactor OpenSearchDatasource error handling to use Promise.reject for error cases and update tests accordingly in #597
  • Add sample dashboards in #585
  • Bugfix: Fix placeholder text for query string not updating in #591
  • Fix size option for trace query in #589
  • Bump golang.org/x/net from 0.34.0 to 0.36.0 in the go_modules group in #590
  • Bump prismjs from 1.29.0 to 1.30.0 in the npm_and_yarn group in #588
  • Bump the all-go-dependencies group across 1 directory with 3 updates in #579
  • Bump @babel/runtime from 7.26.7 to 7.26.10 in the npm_and_yarn group in #593
  • Bump the all-node-dependencies group across 1 directory with 30 updates in #594

2.23.2

  • Chore: add label to external contributions in #567
  • Bump github.com/grafana/grafana-plugin-sdk-go to 0.266.0 in the all-go-dependencies group in #573
  • Forward PPL response errors in #581

2.23.1

  • Fix logs display when _source is log message field in 565

2.23.0

  • Remove openSearchBackendFlowEnabled toggle in #545
  • Make Traces size settable in #550
  • Bump the all-node-dependencies group across 1 directory with 16 updates in #560

2.22.4

  • Fix: cast trim edges setting from a string to int in #558
  • Fix: adhoc filters with number fields in #554
  • Terms aggregation: Change min doc count to 1 in #556
  • Fix: interval parsing in #553
  • Bump the all-go-dependencies group with 2 updates in #548
  • Fix: prevent hidden queries from being used as supplementary queries in #551
  • Update provisioning to work with docker in #546

2.22.3

  • Bump github.com/grafana/grafana-plugin-sdk-go from 0.261.0 to 0.262.0 in the all-go-dependencies group in #542
  • Bump the all-node-dependencies group across 1 directory with 35 updates in #540
  • Bump github.com/grafana/grafana-plugin-sdk-go from 0.260.3 to 0.261.0 in the all-go-dependencies group in #537
  • Bump the all-go-dependencies group across 1 directory with 3 updates in #527
  • Bump the npm_and_yarn group with 2 updates in #533
  • Bump golang.org/x/crypto from 0.28.0 to 0.31.0 in the go_modules group in #524
  • Bump @eslint/plugin-kit from 0.2.1 to 0.2.3 in the npm_and_yarn group in #504
  • Add e2e smoke tests in #526

2.22.2

  • fix: parse geohash precision as string instead of int in #523

2.22.1

  • Add error source, remove some impossible errors in #514

2.22.0

  • Bump grafana-plugin-sdk-go to 0.259.4
  • Add support for logs volumes in #483
  • Opensearch: Replace error source http client with a new error source methods in #505

2.21.5

  • Fix: Pass context in Query Data requests in #507

2.21.4

  • Fix: Revert to using resource handler for health check in #503

2.21.3

  • Upgrade grafana-plugin-sdk-go (deps): Bump github.com/grafana/grafana-plugin-sdk-go from 0.258.0 to 0.259.2

2.21.2

  • Fix: backend health check should accept empty index #495

2.21.1

  • Fix: build each query response separately #489
  • Bump the all-node-dependencies group across 1 directory with 4 updates #482
  • Bump the all-github-action-dependencies group with 4 updates #479

2.21.0

  • Migrate Health check to run through the backend #485
  • Add PDC support #437

2.20.0

  • Chore: update dependencies #476
  • Migrate Annotation Queries to run through the backend #477
  • Upgrade grafana-plugin-sdk-go (deps): Bump github.com/grafana/grafana-plugin-sdk-go from 0.252.0 to 0.256.0 #475
  • Docs: Improve provisioning example in README.md #444
  • Upgrade grafana-plugin-sdk-go (deps): Bump github.com/grafana/grafana-plugin-sdk-go from 0.250.2 to 0.252.0 #474
  • Migrate getting fields to run through the backend #473
  • Migrate getTerms to run through the backend #471

2.19.1

  • Chore: Update plugin.json keywords in #469
  • Fix: handle empty trace group and last updated values in #445
  • Dependabot updates in #463
    • Bump dompurify from 2.4.7 to 2.5.6
    • Bump path-to-regexp from 1.8.0 to 1.9.0
    • Bump braces from 3.0.2 to 3.0.3
  • Chore: Add Combine PRs workflow to the correct directory in #462
  • Chore: Add Combine PRs action in #461

2.19.0

  • Reroute service map trace queries to the backend in #459
  • Use resource handler to get version in #452
  • Bump grafana-aws-sdk to 0.31.2 in #456
  • Bump grafana-plugin-sdk-go to 0.250.2 in #456

2.18.0

  • Add errorsource to errors in #449
  • Trace View: Add name and attributes into event object in #448

2.17.4

  • Bugfix: Update aws/aws-sdk-go to support Pod Identity credentials in #447
  • Bump webpack from 5.89.0 to 5.94.0 in #446

2.17.3

  • Bump fast-loops from 1.1.3 to 1.1.4 in #438
  • Bump ws from 8.15.1 to 8.18.0 in #439
  • Bump micromatch from 4.0.5 to 4.0.8 in #441
  • Chore: Rename datasource file #430
  • Chore: Add pre-commit hook in #429

2.17.2

  • Fix serviceMap when source node doesn't have stats in #428

2.17.1

  • Use tagline to detect OpenSearch in compatibility mode in #419
  • Fix: use older timestamp format for older elasticsearch in #415

2.17.0

  • Clear version error when serverless toggled in #411
  • chore: refactor interval calculation in #412

2.16.1

  • Send all queries to backend if feature toggle is enabled in #409

2.16.0

  • Bugfix: Pass docvalue_fields for elasticsearch in the backend flow in #404
  • Use application/x-ndjson content type for multisearch requests in #403
  • Refactor ad hoc variable processing in #399

2.15.4

  • Chore: Improve error message by handling caused_by.reason error messages in #401

2.15.3

  • Fix: Add fields to frame if it does not already exist when grouping by multiple terms in #392

2.15.2

  • security: bump grafana-plugin-sdk-go to address CVEs by @njvrzm in https://github.com/grafana/opensearch-datasource/pull/395

2.15.1

  • Revert Lucene and PPL migration to backend #8b1e396

2.15.0

  • Trace analytics: Implement Service Map feature for traces in #366, #362, #358
  • Backend Migration: Run all Lucene queries and PPL logs and table queries on the backend in #375
  • Backend Migration: migrate ppl timeseries to backend in #367
  • Traces: Direct all trace queries to the BE in #355
  • Fix flaky tests in #369

2.14.7

  • Fix: data links not working in explore for Trace List queries #353
  • Chore: add temporary node graph toggle #350
  • Chore: update keywords in plugin.json #347

2.14.6

  • Annotation Editor: Fix query editor to support new react annotation handling in #342

2.14.5

  • Bugfix: Forward http headers to enable OAuth for backend queries in #345
  • Allow to use script in query variable by @loru88 in #344
  • Chore: run go mod tidy #338 #338
  • Chore: adds basic description and link to github by @sympatheticmoose in #337

2.14.4

  • Fix: Move "Build a release" in CONTRIBUTING.md out of TLS section in #324
  • Backend Migration: Add data links to responses from the backend in #326

2.14.3

  • Update grafana-aws-sdk to 0.22.0 in #323

2.14.2

2.14.1

  • Upgrade Grafana dependencies and create-plugin config in #315

2.14.0

  • Backend refactor and clean by @fridgepoet in #283
  • Backend: Add trace list query building by @fridgepoet in #284
  • Migrate to create-plugin and support node 18 by @kevinwcyu in #286
  • PPL: Execute Explore PPL Table format queries through the backend by @iwysiu in #289
  • Bump semver from 7.3.7 to 7.5.2 by @dependabot in #292
  • Bump go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace from 0.37.0 to 0.44.0 by @dependabot in #293
  • Bump @babel/traverse from 7.18.6 to 7.23.2 by @dependabot in #297
  • Backend: Refactor trace spans (query building + response processing) by @idastambuk in #257
  • Refactor Response Parser by @sarahzinger in #309
  • Upgrade dependencies by @fridgepoet in #307
  • All trace list requests go through backend by @sarahzinger in #310
  • Use github app for issue commands workflow by @katebrenner in #312

2.13.1

  • Backend: Fix Lucene logs so it only uses date_histogram by @fridgepoet in #277
  • Backend: Remove _doc from sort array in query building, Remove limit from response processing by @fridgepoet in #278

2.13.0

  • [Explore] Migrate Lucene metric queries to the backend by @fridgepoet as part of https://github.com/grafana/opensearch-datasource/issues/197
    • The Lucene metric query type has been refactored to execute through the backend in the Explore view only. Existing Lucene metric queries in Dashboards are unchanged and execute through the frontend. Please report any anomalies observed in Explore by reporting an issue.

2.12.0

  • Get filter values with correct time range (requires Grafana 10.2.x) by @iwysiu in https://github.com/grafana/opensearch-datasource/pull/265
  • Backend (alerting/expressions only) Lucene metrics: Parse MinDocCount as int or string by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/268
  • Backend (alerting/expressions only) Lucene metrics: Fix replacement of _term to _key in terms order by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/270
  • Backend (alerting/expressions only) Lucene metrics: Remove "size":500 from backend processTimeSeriesQuery by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/269

2.11.0

  • [Explore] Migrate PPL log queries to the backend by @kevinwcyu in https://github.com/grafana/opensearch-datasource/pull/259
    • The PPL Logs query type has been refactored to execute through the backend in the Explore view only. Existing PPL Logs queries in Dashboards are unchanged and execute through the frontend. Please report any anomalies observed in Explore by reporting an issue.

2.10.2

  • Dependencies update

2.10.1

  • Backend: Refactor http client so that it is reused

2.10.0

  • [Explore] Migrate Lucene log queries to the backend by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/228
    • The Lucene Logs query type has been refactored to execute through the backend in the Explore view only. Existing Lucene Logs queries in Dashboards are unchanged and execute through the frontend. Please report any anomalies observed in Explore by reporting an issue.
  • Apply ad-hoc filters to PPL queries before sending it to the backend by @kevinwcyu in https://github.com/grafana/opensearch-datasource/pull/244

2.9.1

  • upgrade @grafana/aws-sdk to fix bug in temp credentials

2.9.0

  • Update grafana-aws-sdk to v0.19.1 to add il-central-1 to the opt-in region list

2.8.3

  • Fix: convert ad-hoc timestamp filters to UTC for PPL queries in https://github.com/grafana/opensearch-datasource/pull/237

2.8.2

  • Add ad hoc filters before sending Lucene queries to backend by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/225

2.8.1

  • Fix template variable interpolation of queries going to the backend by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/220

2.8.0

  • Fix: Take into account raw_data query's Size and Order by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/210
  • Backend: Default to timeField if no field is specified in date histogram aggregation by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/215
  • Backend: Change query sort to respect sort order by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/211
  • Backend: Add raw_document query support by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/214

v2.7.1

  • Dependency update

v2.7.0

  • Add raw_data query support to backend by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/203

v2.6.2

  • Backend: Convert tables to data frames by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/186
  • Refactor PPL and Lucene time series response processing to return DataFrames by @idastambuk in https://github.com/grafana/opensearch-datasource/pull/188
  • Backend: Use int64 type instead of string for from/to date times by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/191

v2.6.1

  • Backend: Fix SigV4 when creating client by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/183

v2.6.0

  • Ability to select order (Desc/Asc) for "raw data" metrics aggregations by @lvta0909 in https://github.com/grafana/opensearch-datasource/pull/88
  • Backend: Set field.Config.DisplayNameFromDS instead of frame.name by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/180

v2.5.1

  • Fix backend pipeline aggregation query parsing and data frame building in https://github.com/grafana/opensearch-datasource/pull/168

v2.5.0

Features and Enhancements:

  • OpenSearch version detection added #120

Bug Fixes:

  • Fix query editor misalignment (#163)
  • Fix use case when a panel has queries of different types (#141)

v2.4.1

Bug Fixes:

  • Security: Upgrade Go in build process to 1.20.4
  • Update grafana-plugin-sdk-go version to 0.161.0

v2.4.0

Features and Enhancements:

  • Support for Trace Analytics #122, @idastambuk, @katebrenner, @iwysiu, @sarahzinger

Bug Fixes:

  • Update Backend Dependencies #148, @fridgepoet
  • Fix view of nested array field in table column #128, @z0h3

v2.3.0

  • Add 'Use time range' option, skip date type field validation by @z0h3 in https://github.com/grafana/opensearch-datasource/pull/125
  • Create httpClient with grafana-plugin-sdk-go methods by @fridgepoet in https://github.com/grafana/opensearch-datasource/pull/118

v2.2.0

  • Fix moving_avg modes to correctly parse coefficients as floats (alpha, beta, and gamma) (#99)
  • Use grafana-aws-sdk v0.12.0 to update opt-in regions list (#102)

v2.1.0

Enhancements

  • Add option to query OpenSearch serverless (#92)

v2.0.4

Bug fixes

  • Backend: Fix index being read from the wrong place (#80)

v2.0.3

Bug fixes

  • Fixed missing custom headers (#73)

v2.0.2

Enhancements

  • Upgrade of grafana-aws-skd to 0.11.0 (#69)

v2.0.1

Bug fixes

  • Fixed timestamps in the backend being handled wrong (#31)
  • Fixed timestamps in the frontend being assumed as local, whereas they should be UTC (#21, #66)

v2.0.0

Features and enhancements

  • Upgrade of @grafana/data, @grafana/ui, @grafana/runtime, @grafana/toolkit to 9.0.2 (#46)

Breaking Changes

  • Use SIGV4ConnectionConfig from @grafana/ui (#48)

v1.2.0

Features and enhancements

  • Upgrade of @grafana/data, @grafana/ui, @grafana/runtime, @grafana/toolkit to 8.5.5 (#35, #41)
  • Upgrade of further frontend and backend dependencies (#42, #43)

v1.1.2

Bug fixes

  • Improve error handling
  • Fix alias pattern not being correctly handled by Query Editor

v1.1.0

New features

  • Add support for Elasticsearch databases (2f9e802)

v1.0.0

  • First Release