-
Notifications
You must be signed in to change notification settings - Fork 39
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(cascadingprocessor): Added status code filtering to cascading filter processor #1600
Conversation
pkg/processor/cascadingfilterprocessor/sampling/drop_trace_factory.go
Outdated
Show resolved
Hide resolved
pkg/processor/cascadingfilterprocessor/sampling/drop_trace_factory.go
Outdated
Show resolved
Hide resolved
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.
Just one more question. Is status_code
case sensitive? Is it ok to type error
, Error
, eRRoR
? If not, can we fix the user's input or raise an error?
good point, added! Mentioned in the Readme that the values are "Error" "Ok" or "Unset" but can't completely rely on that :D Output after throwing an error if a user uses status code as "ERROR" instead of "Error":
|
pkg/processor/cascadingfilterprocessor/sampling/drop_trace_factory.go
Outdated
Show resolved
Hide resolved
pkg/processor/cascadingfilterprocessor/sampling/drop_trace_factory.go
Outdated
Show resolved
Hide resolved
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, one minor comment
887d33a
to
79d1792
Compare
Links:
From the github issue, they wanted to be able to filter traces by status code for ROOT span only. Currently the only way to filter is to use minimum number of errors which basically checks the minimum number of errors within a trace, which isn't as great.
For example, if minimum number of errors is set to 1 (this means 1 or more errors):
Trace 1:
Trace 2:
This would return trace 1 and 2. But what they would want is to accept trace 2 only, with status code filtering, using the same example from above, will return trace 2 only.