-
Notifications
You must be signed in to change notification settings - Fork 32
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
[FUP Optimisation] redis: added endpoint filtering #688
Conversation
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.
Few change requests.
3383d8c
to
43b13cd
Compare
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.
Well done, @CagriYonca, but I still have some comments.
43b13cd
to
b900400
Compare
b900400
to
272639c
Compare
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.
Few more request changes.
As discussed in our call, let's change the approach and filter the spans before sending them to the Agent (or Collector) - see src/instana/agent/host.py:300
. That way, we can have a one-size-fits-all solution, and no changes to the instrumentation code will be necessary.
272639c
to
dc9b718
Compare
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.
Few requests.
dc9b718
to
352c993
Compare
Signed-off-by: Cagri Yonca <cagri@ibm.com>
352c993
to
d8557b8
Compare
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.
It looks good to me.
Added endpoint filtering for redis instrumentation. We've aligned with Java and NodeJS teams. The customer has three options to filter endpoints:
If the customer used more than one way of these three, we'd be using one according to this priority:
Ignoring endpoints through env variable
The customer can use filtering with the environment variable below. If the env variable is set, other two ways will be ignored.
INSTANA_IGNORE_ENDPOINTS="service:endpoint"
INSTANA_IGNORE_ENDPOINTS="service:endpoint1,endpoint2"
INSTANA_IGNORE_ENDPOINTS="service"
INSTANA_IGNORE_ENDPOINTS="service1:endpoint1;service2:endpoint1"
INSTANA_IGNORE_ENDPOINTS="service1;service2"
Ignoring endpoints through the configurator.py file
The customer can add a configuration line like below:
config["tracing"]["ignore_endpoints"] = {"service1": ["endpoint1", "endpoint2"], "service2": []}
Ignoring endpoints through the agent configuration
The customer can add a configuration to agent-folder/etc/instana/configuration.yaml
Reference: https://github.ibm.com/instana/technical-documentation/tree/master/tracing/specification#ignoring-endpoints