-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
New Relic Exporter #229
New Relic Exporter #229
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.
couple of questions, LGTM though!
Please rebase and fix imports :) |
Slowly working on this. Your ask to use the new components is requiring a complete redo of most of this code. I'm working on it, but it is slow going. |
Can you please rebase? |
I must be missing something, this is current with master currently. @bogdandrutu did you mean another branch? |
Ah, my bad. I needed a refresh 🤦 |
@MrAlias not sure why the loadtest fails always on this PR but not on master. I bet there is something going on. |
Remove newrelicexporter version suffix and run `go mod tidy`.
I'm not sure why this is happening either, but I am able to "reproduce" locally. The failure is not consistent, different load tests seem to be failing on different runs. Not sure why yet. |
I'm also getting loadtest failures (when run locally) when run against master as well:
Maybe my previous reproductions of the failure were not accurate. Guessing the performance of the underlying hardware is contributing here. |
This is a performance regression caused by your go.mod file bringing new protobuf version:
We observed this in other PRs. I did not look into finding the root cause. Stay on v1.3.5 for now. |
@MrAlias I was wrong about which artifact was the issue, sorry. @tigrannajaryan is correct. |
Remove dependency on google.golang.org/protobuf
@bogdandrutu, @tigrannajaryan: looks like it was also the dependency on The only code depending on this package was in the testing of Summary transforms. I commented it out (so I can still run it manually). I think keeping it this way until the move to the new |
@MrAlias so I was correct by "guessing" that dependency was wrong as well :)) |
Thanks @bogdandrutu and @tigrannajaryan for all the help 😄 |
* Initial tracing * Config tests and refactor * Factory tests * Split transformer into own file * Add integration test of exporting spans * Add transform tests * Initial metrics * Add integration test for metric export * Add transform tests * Update version and include in project go.mod * Add README * Lint fixes * Add to main components * Fix lint * Add units to default in README * Remove sync.Pool * Update collector package * Fix lint * Update go.mod * Update top level go.mod and go.sum Remove newrelicexporter version suffix and run `go mod tidy`. * Clean go.sum for newrelicexporter * Update go.mod * Manually prune go.sum * Try to fix loadtest Remove dependency on google.golang.org/protobuf * go mod tidy
* Refactor (Trace/Metrics)ExportFormat to ExporterName Continuing the refactor that started from exporterhelper in proper naming the related fileds and methods. * Remove Exporter interface and shorten method names
In particular, the following errors are fixed in this commit: * Don't return False in __exit__ Returning a literal causes a mypy error when combined with the `typing.Optional[bool]` type hint. Furthermore, exception handling is the same when returning `False` and when returning `None` (the exception is re-raised). Therefore, it's simpler to remove the return statement and change the type hint to `None`. * Correctly initialize nested tuple Tuples of length 1 should be initialized with a trailing comma to be properly interpreted. * Pass correct type to use_context() in test * Add type annotations for test helper functions Since we have `disallow_untyped_calls = True` in our mypy config for tests, we must add type annotations to any function that is called from a test. Addditionally, bump minimal mypy version to 0.740 to consistently reproduce these errors.
Description: Adds a new exporter to send trace and metric data to New Relic.
Testing: Adds unit and integration tests.
Documentation: Includes functional comments and a README.md for general information on the exporter.