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

Feature/turn off internal fingerprinting #77

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

ORESoftware
Copy link

@ORESoftware ORESoftware commented Sep 23, 2020

Description of the change

The problem is that "SetFingerprint(v bool)" makes it seem like you are setting the fingerprint value for all items or something, which doesnt make sense.

We should make it more obvious for users to turn on / turn off internal fingerprinting. In my case, I prefer the SDK with my own fingerprint value that I generate manually, so I don't want the Go lib to do the unnecessary work of getting line numbers / filenames from the runtime - I want to turn off all internal fingerprinting, since I use these:

      rollbar.Log(level, s, map[string]interface{}{
		"fingerprint": id,
	})

and then my fingerprint rules are like so:

[
  {
    "condition": {
      "contains": "fingerprint", 
      "path": "custom"
    }, 
    "fingerprint": "{{custom.fingerprint}}", 
    "title": "{{default_title}}"
  }
]

Gianina from Rollbar support says:

Hi Alex! I took a look at the documentation for the Go SDK and the only function available for configuring a custom client side fingerprint is rollbar.SetFingerprint() (https://godoc.org/github.com/rollbar/rollbar-go#Client.SetFingerprint). By default, this function is set to false, so there should not be any fingerprint values sent from your client aside from the one that you are specifying in your rollbar.Log function.

So I guess the fingerprint is created on rollbar servers, not the client, which is pretty intense - I would think that rollbar would do that in the client runtime, and not overburden their servers!

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Development

  • Lint rules pass locally
  • The code changed/added as part of this pull request has been covered with tests
  • All tests related to the changed code pass in development

Code review

  • This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
  • "Ready for review" label attached to the PR and reviewers mentioned in a comment
  • Changes have been reviewed by at least one other engineer
  • Issue from task tracker has a link to this pull request

Copy link
Collaborator

@pawelsz-rb pawelsz-rb left a comment

Choose a reason for hiding this comment

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

I think we are introducing more methods. Can we use our existing fingerprinting method and add another optional parameter to indicate we want it from the client?

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.

2 participants