-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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 Tail Based Sampling configuration options to APM Integration #121534
Comments
Pinging @elastic/apm-ui (Team:apm) |
There should be a new Section If
The APM Server runs a couple of validations against the policies, which ideally would be validated already in the UI. Given the time restrictions, we could start with a simple yaml box without validations in the APM UI for A sampling policy can consist of following attributes:
Additional to the value validations (min, max), exactly one I'll update with suggestions for the description soon. |
Tail Based sampling is going to be under the platinum license. I don't think that we currently support any other non-basic feature in the configuration editor. So this likely also entails to only conditionally show the config options if the correct license is detected. |
Adding a more concise overview of the options and the promised descriptions. Please note the more precise description that the sample rate max value is exclusive of 1. @bmorelli25 I'd value your review on the description texts. Tail sampling top level tail config options
Tail sampling Policy
@formgeist can you help figure out the concrete design for the tail sampling policies. I believe we don't yet have the same requirements on any existing config options. @MiriamAparicio please note that the order of the specified policies is important, events are matched against the policies in order of how policies are specified. Given this order, we should provide a nice way to users to change the order of their specified policies to change how events match against the policies, without having to delete and recreate them, for example by allowing to drag them around. |
Yes, of course - I do think your proposal for the 8.1 implementations of supporting the policy creation in the YAML input will be sufficient and allow the user to enable the feature and its options. @MiriamAparicio I've created a quick mock of the panel and its options to make it more clear what should go in and how based on @simitt's descriptions above. Let me know if you have any questions.
@simitt OK, I wasn't aware but thanks for bringing this up. I would suggest (as we've already spoken about) that we sync with the APM PM team and figure out the right steps for the UX of how users will use this feature and perhaps its integration into the APM app. Perhaps sampling policies should be more tightly integrated into the current APM workflows within the APM app, instead of solely being managed in the Integration configuration. |
✅ Left my comments in Miriam's PR |
@formgeist I think the UI should mention the license requirements. Insufficient license should still allow configuration, but should be clear that the settings will be ignored in that case. I'd like to request s a stretch goal for this, to capture telemetry on TBS usage - a simple boolean for enabled would suffice for now. In the future we'd also like to know the actual details around the configuration. |
@graphaelli Agreed - we can add another badge to describe this as a Platinum feature. It will display a tooltip with an explanation of being able to configure it but the configs will be ignored if the Kibana license is anything but Platinum. Not sure if that should be the right copy cc @bmorelli25 |
Kibana version: 8.1
Describe the feature:
APM Server introduces a new feature Tail Based Sampling, which adds new configuration options to the APM Integration. The APM Integration Editor needs to expose these configuration options.
The definition of the configuration options can be found in elastic/apm-server#6895 (comment).
Design solution
Depends On
elastic/apm-server#6895
The text was updated successfully, but these errors were encountered: