Skip to content
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 config option to allow for experimental fields. #1961

Merged
merged 6 commits into from
Mar 12, 2019

Conversation

simitt
Copy link
Contributor

@simitt simitt commented Feb 27, 2019

For easier enabling and indexing experimental features during development, agent developers can now make use of a newly added config option apm-server.mode. When set to experimental arbitray additional information can be set up within context.experimental that gets dynamically indexed.

How can this be used?
In apm-server.yml set the flag apm-server.mode: experimental and send up additional information nested within context.experimental for spans, transactions or errors.
In a follow up we can enable this by default for the integration testing.

Do not use this in production environment! This is solely added for the purpose of enabling building POCs and trying out different approaches during development.

cc @felixbarny

To ease enabling and indexing experimental features for development for
agent developers, a new config option `environment` is added that can be
used to send up arbitray information that gets dynamically indexed. Only
use this in non-production environments.
@simitt
Copy link
Contributor Author

simitt commented Feb 28, 2019

related elastic/kibana#32185

@simitt
Copy link
Contributor Author

simitt commented Feb 28, 2019

Not sure why it is not picking up the PR elastic/kibana#32185 in the test.

simitt added a commit to simitt/kibana that referenced this pull request Mar 4, 2019
@simitt
Copy link
Contributor Author

simitt commented Mar 4, 2019

@graphaelli the PR in Kibana ensuring that those index pattern changes would also be merged to the Index Pattern, let's other test runs fail, as they also test against this PR now. I'd appreciate a review on this PR to make progress with it and get our CI back to green.

Copy link
Member

@graphaelli graphaelli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you explore making the decision to include experimental data as part of decoding? I'm hesitant to have the experimental data be passed around in memory only to be dropped come transform time.

beater/config.go Outdated Show resolved Hide resolved
@simitt
Copy link
Contributor Author

simitt commented Mar 5, 2019

@graphaelli thanks for the input. I changed the contract for decoding to also pass in a config option, and now we can immediately drop any left overs in context if they should not be stored.

Copy link
Member

@graphaelli graphaelli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looking good, left a few little comments

beater/config.go Outdated Show resolved Hide resolved
beater/route_config.go Outdated Show resolved Hide resolved
model/context.go Outdated Show resolved Hide resolved
model/error/event.go Outdated Show resolved Hide resolved
model/metricset/event.go Outdated Show resolved Hide resolved
@simitt
Copy link
Contributor Author

simitt commented Mar 11, 2019

@graphaelli can I get another round of review on this?

simitt added a commit to elastic/kibana that referenced this pull request Mar 11, 2019
* [APM] Add experimental root key to index pattern.

related to elastic/apm-server#1961
@simitt simitt merged commit 41fae6d into elastic:master Mar 12, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants