graylog2-server icon indicating copy to clipboard operation
graylog2-server copied to clipboard

Wizard Step: Create New Stream

Open grotlue opened this issue 1 year ago • 6 comments

  • Shows a form to create a new stream with:
    • Title
    • Description (optional)
    • Index Set (select of existing index sets), refreshes regularly
    • Checkbox: Remove matches from Default Stream
    • Checkbox: Create a new Pipeline for this Stream
    • Select of all existing pipelines (only one can be selected)
  • Shows a button "Create a New Index Set", on click
    • Opens the existing index set creation form in a new tab
  • Shows a button "All Done - Start Input" which leads to https://github.com/Graylog2/graylog2-server/issues/20567

f6332812-b728-4aba-b6bf-87d8e2b7b7f6#media-blob-url=true id=ad13e9a8-177b-4618-ab3e-3df4f306eea5 contextId=10149 collection=

grotlue avatar Sep 26 '24 13:09 grotlue

@tellistone If the user chooses to "Create a new Pipeline for this Stream" what exactly is the content of the pipeline? Is it just an "empty" one with a name?

grotlue avatar Sep 27 '24 12:09 grotlue

APIs:

  • http://localhost:8080/api/api-browser/global/index.html#!/Streams/create_post_1 to create a new stream
  • http://localhost:8080/api/api-browser/global/index.html#!/System/IndexSets/list_get_0 to list all index sets

grotlue avatar Sep 30 '24 08:09 grotlue

@tellistone If the user chooses to "Create a new Pipeline for this Stream" what exactly is the content of the pipeline? Is it just an "empty" one with a name?

Yes - empty pipeline with name that corresponds to the new stream, attached to the new stream

tellistone avatar Oct 11 '24 11:10 tellistone

Added backend label as we need to routes the messages to the new stream

grotlue avatar Oct 11 '24 13:10 grotlue

@tellistone Do I understand correctly that we want to ask the user if they want to create another custom stream?

grotlue avatar Oct 11 '24 13:10 grotlue

Yeah, their options are

  1. no routing, same as today
  2. pick an existing stream, we create routing to it
  3. create a new stream, optionally attach an existing pipeline to it, create routing to it

tellistone avatar Oct 14 '24 12:10 tellistone

In ui design, we should push the "Create a New Index Set" action as highly recommended.

tellistone avatar Nov 21 '24 12:11 tellistone

For the contextual warning in the mockup there is no API. At least I couldn't find one that returns a list of streams connected to a specific index set. @patrickmann correct me if I'm wrong. I'd suggest to continue with this issue without that and if we want to have it, create a seperate one.

grotlue avatar Nov 27 '24 16:11 grotlue

The stream APIs do include information about index sets. To find all streams for a specific index set, you currently have to call GET /streams and then filter by the desired index set.

The BE already has a method indexSetIdsByIds to return all stream IDs for a given set of index IDs, but it is not exposed as an API.

patrickmann avatar Nov 28 '24 07:11 patrickmann

I think it would be a better solution if we can either can integrate the streams in the index sets list call or add a new call to get all streams for one index set (id). I don't think it makes a lot of sense to get the whole stream list only for that use case.

grotlue avatar Dec 02 '24 11:12 grotlue