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

STTP 2 & 3 Scala HTTP Client Instrumentation #362

Merged
merged 16 commits into from
Aug 20, 2021

Conversation

GDownes
Copy link
Contributor

@GDownes GDownes commented Aug 3, 2021

Overview
Adds partial instrumentation for STTP a Scala HTTP client.
https://sttp.softwaremill.com/en/latest/

This PR targets STTP version 2.x & 3.x introducing instrumentation for three STTP backends:

HttpURLConnectionBackend
AkkaHttpBackend
Http4sBackend

The full list of supported backends:
https://sttp.softwaremill.com/en/latest/backends/summary.html

Related Github Issue
#315

Testing
Introspector based unit tests were created to showcase the usage of the STTP client before and after instrumentation.
After instrumentation more segments are created and captured including HTTP specific details.
Verify instrumentation tasks ran successfully

Sample application created to use instrumentation and review in New Relic One:
https://github.com/GDownes/newrelic-sttp-instrumentation-usage

Checks
[X] Are your contributions backwards compatible with relevant frameworks and APIs? Yes, standalone instrumentation
[X] Does your code contain any breaking changes? No
[X] Does your code introduce any new dependencies? Yes, new dependencies to support instrumentation

@GDownes GDownes changed the title Sttp client instrumentation STTP 2 & 3 Scala HTTP Client Instrumentation Aug 3, 2021
@twcrone twcrone self-assigned this Aug 18, 2021
@twcrone
Copy link
Contributor

twcrone commented Aug 20, 2021

Ran unit tests locally for these instrumentations and passed. Unit tests Scala compile still flaky for larger project execution.

@twcrone twcrone merged commit 8422a9f into newrelic:main Aug 20, 2021
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