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

feat(server): Add generic configuration for dynamic sampling rules #907

Merged
merged 20 commits into from
Feb 2, 2021

Conversation

RaduW
Copy link
Contributor

@RaduW RaduW commented Jan 11, 2021

This PR implements a generic format for rules and supports forward compatible enhancements

Also with the generic configuration we now support 3 types of rules:

  • Rules that apply to traces (and use trace contexts)
  • Rule that apply to errors
  • Rule that apply to transaction events

@RaduW RaduW marked this pull request as ready for review January 11, 2021 10:10
@RaduW RaduW requested review from a team and jan-auer January 11, 2021 10:10
@jan-auer jan-auer changed the title feat(server): Add generic configuration for dynamic sampling rules. feat(server): Add generic configuration for dynamic sampling rules Jan 13, 2021
@RaduW RaduW force-pushed the feat/dyn-sampling-generic-config branch from a80ca14 to 845d705 Compare January 13, 2021 14:19
@RaduW RaduW force-pushed the feat/dyn-sampling-generic-config branch from 845d705 to e8537f9 Compare January 13, 2021 14:27
Rules that can't be parsed (maybe because the Relay is old and new
operators were introduced) are handled as follows:
- processing Relays ignore rules that they cannot understand
- non processing Relays disable rule sampling if they detect any rule
that they don't understand
New rules are only project specific
New rules can be build with Or,And,Not combinators
@RaduW RaduW force-pushed the feat/dyn-sampling-generic-config branch from 290265b to 4036ac0 Compare January 20, 2021 15:43
Copy link
Member

@jan-auer jan-auer left a comment

Choose a reason for hiding this comment

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

Thank you! The new rule configuration looks good and makes sense. In a follow up, we should investigate how to express inbound filters best with these rules.

A number of code and style changes below.

relay-server/src/actors/events.rs Outdated Show resolved Hide resolved
CHANGELOG.md Outdated Show resolved Hide resolved
relay-server/src/endpoints/common.rs Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Outdated Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Outdated Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Outdated Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Outdated Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Outdated Show resolved Hide resolved
relay-server/src/utils/dynamic_sampling.rs Show resolved Hide resolved
@RaduW RaduW requested a review from jan-auer January 27, 2021 17:45
Copy link
Member

@jan-auer jan-auer left a comment

Choose a reason for hiding this comment

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

LGTM, once conflicts are resolved.

@RaduW RaduW merged commit 7d3347c into master Feb 2, 2021
@RaduW RaduW deleted the feat/dyn-sampling-generic-config branch February 2, 2021 10:33
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.

None yet

2 participants