- 
                Notifications
    You must be signed in to change notification settings 
- Fork 35
[FUP Optimisation] redis: added endpoint filtering #688
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
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 <[email protected]>
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