-
Notifications
You must be signed in to change notification settings - Fork 73
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
Add support for dimension fields #236
Conversation
💚 Build Succeeded
Expand to view the summary
Build stats
🤖 GitHub commentsTo re-run your PR in the CI, just comment with:
|
@@ -31,18 +33,18 @@ type field struct { | |||
func ValidateFieldGroups(pkgRoot string) ve.ValidationErrors { |
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.
Originally this function (and whole file) was designed to check field group properties. See comment.
Does validation logic of dimensions apply to ordinary, single fields? Maybe it's worth extracting it to a separate .go file?
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.
Oh, good point, yes, I will separate it.
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.
Split in 26292de, this would be ready for another review.
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.
LGTM
versions/1/changelog.yml
Outdated
@@ -4,6 +4,9 @@ | |||
## | |||
- version: 1.2.1-next | |||
changes: | |||
- description: Add support for dimension fields. |
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.
nit: new changes go to the bottom :)
What does this PR do?
dimension
parameter to fields, so they can be defined as dimensions for time series data. Dimensions are used to identify time series. For a data stream, events with the same set of dimensions are considered the same time serie. Only keywords, ips and numeric values can be defined as dimensions, this is enforced by the spec.Why is it important?
There is an effort in Elasticsearch to improve the support of time series data (see elastic/elasticsearch#74014, elastic/elasticsearch#74450, elastic/elasticsearch#74660). As part of this, dimensions are going to be first-class citizens, what will have advantages when storing and consuming time series data. To leverage these features in integrations, their dimensions should be properly defined.
Checklist
test/packages
that prove my change is effective.versions/N/changelog.yml
.Related issues