-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow es sending to non datastream #73
Allow es sending to non datastream #73
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm ok with the change but I would like to discuss the implementation. I think a different option (like index_name
) would be preferred over the composite es_index_or_datastream_name
. If set, it overrides data stream naming, otherwise we retain the same behaviour.
This would have a set of advantages:
- not a breaking change (old config would still work)
- allow to configure the index name if needed
- in case data streams are used the current config reduce cognitive load for customers (as they have to specify only data set and namespace and not worry about data stream naming constraints).
- clearer configuration logic: either data streams or override (override supports writing to indexes too)
What to you think?
Co-authored-by: endorama <526307+endorama@users.noreply.github.com>
I discussed the option of an extra config param without having a breaking change with @ravikesarwani the golden rule we agreed on was "let's make it work with defaults and/or plain config for 90% of the use cases" do you think that's reasonable? @ravikesarwani , do you think we should reconsider the implementation according to @endorama suggestions? |
While in theory this may seem like it, in practical (and based on our experience talking to folks in GoDaddy) no one really knows what "dataset" & "namespace" really is (even after giving them all the links for data stream naming conventions) and how we internally create the full data stream name by combining "logs-", dataset & namespace. Having a single value is desirable and many Elasticsearch users understand index or data stream name. This is still an optional value (for AWS service logs we send it to correct data streams and they don't have to specify this) and they will only use this config when they have created their own index template (in complex use cases) and its easier for them to put the full value or the alias here. Breaking it into many pieces is our internal logic and not something I think we need to expose to our customers via way of multiple config values. |
@ravikesarwani this is a really interesting comment, thanks for sharing. Approved, code was already ✔️ |
Breaking change
What does this PR do?
Add support for both index and datstream for sending events do elasticsearch
Why is it important?
Not every users might use datastreams, and they need a way to send to an index or an alias: before this change it was not possible.
Checklist
CHANGELOG.md
Author's Checklist
How to test this PR locally
Related issues
Closes #72
Use cases
Screenshots
Logs