Add Kibana Streams API (/api/streams, /api/streams/_status) to diagnostics#1033
Open
lucabelluccini wants to merge 3 commits into
Open
Add Kibana Streams API (/api/streams, /api/streams/_status) to diagnostics#1033lucabelluccini wants to merge 3 commits into
lucabelluccini wants to merge 3 commits into
Conversation
Member
|
@lucabelluccini I'll wait until you can confirm those last two, then I can merge this. |
Contributor
Author
|
Hello @flash1293 / @3kt - May I ask if those APIs make sense and if we should gate them on a 9.2 or even 9.4 version instead? |
Contributor
Author
|
Hello @pickypg - I need a review by Joe/Alexis - Let's hold please Tests run against 9.5.0-SNAPSHOT |
Adds kibana_streams (/api/streams) and kibana_streams_status (/api/streams/_status) to the Kibana diagnostic queries. Both APIs exist starting in the 8.19.0 and 9.1.0 release trains but not in 9.0.x, so they are gated with ">= 8.19.0 < 9.0.0 || >= 9.1.0". Neither endpoint supports pagination. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
lucabelluccini
force-pushed
the
add-kibana-streams-api
branch
from
July 7, 2026 19:29
a4f8ae4 to
da42d09
Compare
Kibana's internal GET /api/streams/_status route proxies to
Elasticsearch's native GET /_streams/status and was rejected by at
least one Kibana build ("exists but is not available with the
current configuration"). Query the Elasticsearch endpoint directly
instead, which is where the status actually lives.
Same version gate as the Kibana Streams entries: present in the
8.19.0 and 9.1.0 release trains, absent in 9.0.x.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
flash1293
approved these changes
Jul 15, 2026
flash1293
left a comment
There was a problem hiding this comment.
LGTM, /api/streams is not super light, but since the number of streams is bounded by what Elasticsearch can handle (a couple thousand at max), it shouldn't cause crazy memory pressure.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
kibana_streams(GET /api/streams) tokibana-rest.ymlso the diagnostic collects Kibana Streams configuration.streams_status(GET /_streams/status) toelastic-rest.ymlso the diagnostic collects stream enablement status directly from Elasticsearch. Kibana's ownGET /api/streams/_statusis a thin proxy over this Elasticsearch endpoint and was rejected by at least one Kibana build ("exists but is not available with the current configuration"), so we query Elasticsearch directly instead.>= 8.19.0 < 9.0.0 || >= 9.1.0, matching where these APIs actually exist (confirmed against the 8.19.0/9.0.0/9.1.0 release tags for both Kibana and Elasticsearch — the APIs are present in the 8.19.0 and 9.1.0 trains, but not in 9.0.x).Test plan
./gradlew compileJavasucceeds./gradlew test --tests "co.elastic.support.rest.*"passes (existing YAML-loading tests still pass with the new entries)kibana-apidiagnostics against a local Kibana 9.5.0 instance —kibana_streams.jsoncollected real stream data successfullystreams_status.jsonis produced