elastic / elastic/integrations
[rapid7_insightvm] Consolidate the integration onto a single CEL input
- Dominant language
- Handlebars
- Stars
- 333
- Forks
- 647
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 209
Description
# Consolidate the Rapid7 InsightVM integration onto a single CEL input
**Package:** `rapid7_insightvm` · **Type:** Enhancement · **Team:** Security Service Integrations
## The problem (user's view)
Collection is split across two Elastic Agent inputs. `asset_vulnerability` runs on CEL, but `asset` and `vulnerability` are still on HTTPJSON. Because each input carries its own copy of the connection config, a user enters the same InsightVM console credentials twice and toggles streams in two places.
## Where we are
Three data streams (v2.9.0): `asset_vulnerability` on CEL; `asset` and `vulnerability` on HTTPJSON.
## What I'm proposing
Migrate `asset` and `vulnerability` to CEL so the integration runs through one input and the connection is configured once.
## Why it's worth doing
- Credentials entered once instead of twice.
- One engine to explain in docs and support.
- CEL-only improvements (state persistence, dedup, error handling) cover every stream.
## What to watch out for
The upgrade is the risky part. Switching input type can reset cursors and cause gaps or duplicates at cutover, so we need a cursor-continuity plan, tests proving no gaps/duplicates, and a changelog note.
## Rough breakdown
1. Migrate `asset` to CEL + tests.
2. Migrate `vulnerability` to CEL + tests.
3. Prove the upgrade is clean at cutover.
4. Update docs and changelog.
Part of a wider push to put Security Service Integrations packages on a single CEL input. Related: #20286 (SentinelOne), #14813 (Google Workspace), #20288 (Cortex XDR).
Contributor guide
Research direction
Start in the rapid7_insightvm package by comparing the existing asset_vulnerability CEL stream with the asset and vulnerability HTTPJSON streams. Define tests for cursor continuity and no gaps or duplicates during the input change, then update the integration documentation and changelog when both streams run through the single CEL input.
Written by the indexing model from the issue text.
Assessment
- Domain
- security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100