Skip to main content

Overview

OpenSRE queries Amazon OpenSearch Service (formerly Amazon Elasticsearch Service, AWS ES) over its REST API to pull error logs and application events into its answers. This page covers AWS ES specifically; for self-hosted OpenSearch or Elastic Cloud, see the OpenSearch / Elasticsearch integration. AWS ES runs the same integration as self-hosted OpenSearch: there’s no separate “AWS ES” config, just an OPENSEARCH_URL pointed at your domain endpoint. Verify and setup use the opensearch service name.

Prerequisites

  • An Amazon OpenSearch Service (AWS ES) domain
  • The domain endpoint URL (e.g. https://search-mydomain-xxxxx.us-east-1.es.amazonaws.com)
  • Fine-grained access control enabled on the domain, with a dedicated internal user mapped to a read-only role (the built-in readall role works) rather than the master user

Setup

Option 1: CLI setup

Pick OpenSearch / Elasticsearch.

Option 2: Environment variables

Credentials

Create an internal user in fine-grained access control and map it to a read-only role (for example readall). Do not use the master user for OpenSRE.

Tools

The tool becomes available once the opensearch integration is configured. Availability is gated on sources["opensearch"].

Verify

There is no separate elasticsearch verify target. For a local recipe (Docker container, seeded index, real tool output), see OpenSearch / Elasticsearch → Quick local test with Docker.

Troubleshooting

Gotcha

This integration also supports an OPENSEARCH_API_KEY (used by Elastic Cloud), but AWS ES has no equivalent: the OpenSearch security plugin doesn’t natively issue API keys (opensearch-project/security#4009), so Basic Auth is the only option here. It does not sign requests with SigV4 either.

Security

  • Prefer a dedicated internal read-only user, not the master user.
  • Store credentials out of source control.