Skip to content

[Obs AI] Add o11y data-generators (OpenRCA and RCAEval) for producing logs, metrics, traces#256591

Merged
sorenlouv merged 22 commits intoelastic:mainfrom
sorenlouv:add-rca-datasets
Mar 18, 2026
Merged

[Obs AI] Add o11y data-generators (OpenRCA and RCAEval) for producing logs, metrics, traces#256591
sorenlouv merged 22 commits intoelastic:mainfrom
sorenlouv:add-rca-datasets

Conversation

@sorenlouv
Copy link
Copy Markdown
Contributor

@sorenlouv sorenlouv commented Mar 7, 2026

This PR adds support for alternative datasets to OpenTelemetry-demo. The scripts for ingesting the datasets OpenRCA and RCAEval make it easy to populate Elasticsearch with realistic logs, traces, and metrics for evaluating Observability Agent Builder tools against known root-cause scenarios.

Try it

1. Start EDOT Collector (only necessary when ingesting traces)

node scripts/edot_collector.js

Run one of the following commands from x-pack/solutions/observability/plugins/observability_agent_builder/.

2. RCAEval

# List all cases
npx tsx scripts/ingest_rcaeval.ts

# Ingest a single failure case (adservice returning incorrect values)
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1

# Or skip traces if you don't want to run the EDOT Collector
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1 --skip-traces --skip-metrics

See the full README for all options, ground-truth expected root causes for each case, and verification commands.

Cursor:

@sorenlouv sorenlouv marked this pull request as ready for review March 9, 2026 10:53
@sorenlouv sorenlouv requested a review from a team as a code owner March 9, 2026 10:53
@sorenlouv sorenlouv added release_note:skip Skip the PR/issue when compiling release notes backport:skip This PR does not require backporting labels Mar 9, 2026
},
processors: {
elastictrace: {},
elasticapm: {},
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

elastictrace processor has been deprecated and succeeded by elasticapm processor elastic/elastic-agent#10588

@elastic-vault-github-plugin-prod elastic-vault-github-plugin-prod bot requested a review from a team as a code owner March 10, 2026 10:54
@jbudz jbudz removed the request for review from a team March 13, 2026 21:55
@elasticmachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Scout: [ security / entity_store ] plugin / local-serverless-security_complete - Entity Store Main logs extraction - Should extract properly extract host
  • [job] [logs] Scout: [ platform / workflows_management ] plugin / local-serverless-security_complete - Workflow execution concurrency control - drop strategy drops new executions until there is an already running execution

Metrics [docs]

Unknown metric groups

ESLint disabled in files

id before after diff
observabilityAgentBuilder 0 3 +3

Total ESLint disabled count

id before after diff
observabilityAgentBuilder 2 5 +3

History

@sorenlouv sorenlouv merged commit cdc836c into elastic:main Mar 18, 2026
19 checks passed
@sorenlouv sorenlouv deleted the add-rca-datasets branch March 18, 2026 14:11
szwarckonrad pushed a commit to szwarckonrad/kibana that referenced this pull request Mar 18, 2026
… logs, metrics, traces (elastic#256591)

This PR adds support for alternative datasets to OpenTelemetry-demo. The
scripts for ingesting the datasets
[OpenRCA](https://github.com/microsoft/OpenRCA) and
[RCAEval](https://github.com/phamquiluan/RCAEval) make it easy to
populate Elasticsearch with realistic logs, traces, and metrics for
evaluating Observability Agent Builder tools against known root-cause
scenarios.

### Try it

**1. Start EDOT Collector (only necessary when ingesting traces)**
```sh
node scripts/edot_collector.js
```

Run one of the following commands from
`x-pack/solutions/observability/plugins/observability_agent_builder/`.

**2. RCAEval**
```bash
# List all cases
npx tsx scripts/ingest_rcaeval.ts

# Ingest a single failure case (adservice returning incorrect values)
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1

# Or skip traces if you don't want to run the EDOT Collector
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1 --skip-traces --skip-metrics
```

See the full README for all options, ground-truth expected root causes
for each case, and verification commands.

**Cursor:**

- Using the datasets to evaluate the Obs Agent:
https://cursor.com/dashboard?tab=shared-chats&shareId=observability-agent-validation-plan-shared-25MTZpoD4xzN

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
mbondyra added a commit to mbondyra/kibana that referenced this pull request Mar 18, 2026
…d_agent_navigation2

* commit 'b511b784a89644463497411bc8cfac03522d43a9': (40 commits)
  skip failing test suite (elastic#252959)
  skip failing test suite (elastic#255548)
  skip failing test suite (elastic#256140)
  skip failing test suite (elastic#257103)
  skip failing test suite (elastic#258148)
  [SharedUX] Add solution view switch callout to spaces plugin (elastic#258093)
  skip tests consistently failing on ECH (elastic#258157)
  [EDR Workflows][Osquery] Disable tags for scheduled queries (elastic#258222)
  [Security solution][Attacks] Add navigation E2E test  (elastic#255373)
  [canvas] fix unable to load embeddable when no references are provided (elastic#257779)
  docs(streams): update Discovery settings labels and help text (elastic#258328)
  [ResponseOps] Fixes x-pack/platform/test/alerting_api_integration/spaces_only/tests/alerting/group4/alert_severity.ts flaky test (elastic#258226)
  [Lens as Code] Fix legend truncation issues (elastic#258216)
  Upgraded flatted (elastic#258252)
  [One Discover][Logs UX] Update OpenTelemetry Semantic Conventions (elastic#256613)
  add Agent Builder compatibility to connectors (elastic#257491)
  [Obs AI] Add o11y data-generators (OpenRCA and RCAEval) for producing logs, metrics, traces (elastic#256591)
  [One Workflow] Update execution history UI: show nested workflows steps (elastic#257352)
  [One Workflow] bulkUpdateSchedules should be called with request to follow auth (elastic#258150)
  [Agent Builder] Semantic Meta Layer (elastic#254849)
  ...
qn895 pushed a commit to qn895/kibana that referenced this pull request Mar 18, 2026
… logs, metrics, traces (elastic#256591)

This PR adds support for alternative datasets to OpenTelemetry-demo. The
scripts for ingesting the datasets
[OpenRCA](https://github.com/microsoft/OpenRCA) and
[RCAEval](https://github.com/phamquiluan/RCAEval) make it easy to
populate Elasticsearch with realistic logs, traces, and metrics for
evaluating Observability Agent Builder tools against known root-cause
scenarios.

### Try it

**1. Start EDOT Collector (only necessary when ingesting traces)**
```sh
node scripts/edot_collector.js
```

Run one of the following commands from
`x-pack/solutions/observability/plugins/observability_agent_builder/`.

**2. RCAEval**
```bash
# List all cases
npx tsx scripts/ingest_rcaeval.ts

# Ingest a single failure case (adservice returning incorrect values)
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1

# Or skip traces if you don't want to run the EDOT Collector
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1 --skip-traces --skip-metrics
```

See the full README for all options, ground-truth expected root causes
for each case, and verification commands.

**Cursor:**

- Using the datasets to evaluate the Obs Agent:
https://cursor.com/dashboard?tab=shared-chats&shareId=observability-agent-validation-plan-shared-25MTZpoD4xzN

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
jeramysoucy pushed a commit to jeramysoucy/kibana that referenced this pull request Mar 26, 2026
… logs, metrics, traces (elastic#256591)

This PR adds support for alternative datasets to OpenTelemetry-demo. The
scripts for ingesting the datasets
[OpenRCA](https://github.com/microsoft/OpenRCA) and
[RCAEval](https://github.com/phamquiluan/RCAEval) make it easy to
populate Elasticsearch with realistic logs, traces, and metrics for
evaluating Observability Agent Builder tools against known root-cause
scenarios.

### Try it

**1. Start EDOT Collector (only necessary when ingesting traces)**
```sh
node scripts/edot_collector.js
```

Run one of the following commands from
`x-pack/solutions/observability/plugins/observability_agent_builder/`.

**2. RCAEval**
```bash
# List all cases
npx tsx scripts/ingest_rcaeval.ts

# Ingest a single failure case (adservice returning incorrect values)
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1

# Or skip traces if you don't want to run the EDOT Collector
npx tsx scripts/ingest_rcaeval.ts --case adservice_f4/1 --skip-traces --skip-metrics
```

See the full README for all options, ground-truth expected root causes
for each case, and verification commands.

**Cursor:**

- Using the datasets to evaluate the Obs Agent:
https://cursor.com/dashboard?tab=shared-chats&shareId=observability-agent-validation-plan-shared-25MTZpoD4xzN

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:skip This PR does not require backporting release_note:skip Skip the PR/issue when compiling release notes v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants