Mateusz Rzeszutek
d919f84cf8
Merge javaagent-instrumentation-api into javaagent-extension-api ( #5936 )
...
* Merge javaagent-instrumentation-api into javaagent-extension-api
* remove some leftover references to javaagent-instrumentation-api
* add missing instrumentation-api to distro example
2022-04-28 20:11:15 -07:00
Lauri Tulmin
875b7fe3ad
Simplify HttpUrlConnection instrumentation ( #5673 )
2022-03-23 09:39:45 -07:00
Anuraag Agrawal
854f3eb3dc
Remove test of httpurlconnection implementation detail ( #5670 )
2022-03-23 16:02:21 +09:00
Lauri Tulmin
45bd419ec0
Run tests with jdk17 ( #5598 )
2022-03-17 13:25:16 -07:00
Trask Stalnaker
c06d70d174
Remove JAXRS HttpClient instrumentation ( #5430 )
2022-02-28 22:47:26 -08:00
Mateusz Rzeszutek
8b767ac435
Refactor HTTP attributes extractors to use composition over inheritance ( #5267 )
...
* Refactor HTTP attributes extractors to use composition over inheritance
* Rename remaining variables: *Extractor to *Getter
2022-01-31 09:25:27 -08:00
jason plumb
c5c0a2bcdf
NetClientAttributesAdapter - favor composition over inheritance ( #5030 )
...
* first pass at separating NetAttributesAdapter interface and make NetClientAttributesExtractor concrete
* rename the implementations extractor -> adapter
* hide constructor and make factory method
* rename to client and add javadoc
* spotless
* finish javadoc thought
* rebase
* renamed NetClientAttributesAdapter to NetClientAttributesGetter
* fix lettuce
* code review comments
* code review comments -- renaming for consistency
* adapter -> getter
* fix ratpack
* adapter -> getter
2022-01-20 10:51:13 -08:00
Mateusz Rzeszutek
331ce287d2
Don't use HttpStatusConverter outside of instrumentation-api ( #4870 )
...
* Don't use HttpStatusConverter outside of instrumentation-api
* add comment
2021-12-14 10:07:18 +01:00
Trask Stalnaker
ce4cef76f9
Clean up groovy assertions ( #4805 )
2021-12-05 23:23:58 -08:00
Lauri Tulmin
b287c8d1d0
Enable read timeout test for some http clients ( #4702 )
...
* Enable read timeout test for some http clients
* remove unused import
* use separate client for read timeout request
2021-11-28 13:18:26 -08:00
Lauri Tulmin
fac60ddb3c
Enable read timeout test for HttpURLConnection ( #4699 )
2021-11-23 10:30:45 -08:00
Trask Stalnaker
81cb8e61db
More metrics ( #4541 )
2021-10-29 10:17:35 +03:00
Nikita Salnikov-Tarnovski
8ea59f0846
Rename all InjectAdapters to Setters ( #4489 )
...
* Rename all InjectAdapters to Setters
* Errorprone fixes
* Make setter public
2021-10-25 12:36:59 -07:00
Martin
d314d76fce
rename `newBuilder()` to `builder()` ( #4475 )
...
* rename `newBuilder()` to `builder()`
* rename `newBuilder()` to `builder()`
2021-10-22 20:50:43 -07:00
Lauri Tulmin
9b8ab5eeec
Migrate to spock 2 ( #4458 )
...
* Migrate to spock 2
* Fix smoke test suites
* address review comments
* review comment
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-10-22 08:40:58 -07:00
jason plumb
a50c13382f
Don't report 400 level as error for SERVER spans ( #4403 )
...
* don't report 400 level as error for server spans
* fix HttpServerTest base class
* fix JspInstrumentationForward test
* split HttpStatusConverter into client and server implementations, and create two HttpSpanStatusExtractor.create methods, one for server and one for client.
* rebase
* fix test
* spotless
* fix test
* remove unused
* use strongly typed attributes converters and rename to overloaded create()
* fix tests
* remove redundant assert
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-10-20 13:39:35 -07:00
Trask Stalnaker
8739cdf73e
Capture response headers for HttpUrlConnection ( #4417 )
2021-10-19 10:18:19 -07:00
Martin
ac91dc090a
Type annotation placement ( #4406 )
...
* switch annotation `org.checkerframework.checker.nullness.qual.Nullable` to `javax.annotation.Nullable`
* code format
2021-10-17 17:38:43 -07:00
Trask Stalnaker
63a2383905
Split NetAttributesExtractor into NetClientAttributesExtractor and NetServerAttributesExtractor ( #4287 )
...
* Net Extractors
* Either request or response but not both
* Fix merge conflicts
* Separate by OnStart/OnEnd
* PeerServiceAttributes
* Fix test
* Restructure to client/server
* Fix merge conflict in main
* more
* peer.service
* Feedback
* peer.service is only for clients
* Fix merge conflict
* rename
* Armeria
* peer.service is only for clients
* rename
* WIP
* Sync Dubbo with Armeria
* More Dubbo and Armeria
* gRPC
* Revert some Dubbo changes
* more peer.service
* Fix test
* Fix merge
* Fixes
2021-10-07 15:40:15 -07:00
Nikita Salnikov-Tarnovski
a48bd9de3f
Move PeerServiceAttributesExtractor from javaagent api to instrumentation api ( #4235 )
...
* Move PeerServiceAttributesExtractor from javaagent api to instrumentation api
* spotless
2021-10-06 12:42:55 -07:00
Mateusz Rzeszutek
d3dbe415a1
Move HttpHeadersConfig methods back to instrumentation-api ( #4298 )
...
* Move HttpHeadersConfig methods back to instrumentation-api
* remove unnecessary method
2021-10-06 10:51:45 +02:00
Mateusz Rzeszutek
7791be24e0
Remove implementations of host() and userAgent() in HTTP extractors ( #4299 )
...
* Remove implementations of host() and userAgent() in HTTP extractors
* fix broken headers copying
2021-10-05 10:25:45 -07:00
Mateusz Rzeszutek
7473eff1e6
Extract HTTP request/response headers as span attributes ( #4237 )
...
* Extract HTTP request/response headers as span attributes
* fix muzzle
* code review comments
* fix compilation failure after merge conflict
* avoid using streams API when transforming the headers list
* fix liberty extractor
* fix spring webmvc extractor
2021-10-05 10:20:59 +02:00
Mateusz Rzeszutek
c11b96e4d0
Make it possible to use InstrumentationContext (now VirtualField) fro… ( #4218 )
...
* Make it possible to use InstrumentationContext (now VirtualField) from library instrumentation
* fix tests
* fix javadocs
* fix some more tests
* code review comments
* setIfNull, computeIfNull
2021-10-01 11:13:11 +02:00
Trask Stalnaker
9ea33edf08
Remove attrs from http client attributes extractor ( #4210 )
...
* Remove scheme/host/target from HttpClientAttributesExtractor
* And jaxrs-client
* Remove unused methods
2021-09-28 12:58:42 -07:00
Mateusz Rzeszutek
a277a8b636
Separate HTTP client/server AttributesExtractors ( #4195 )
2021-09-24 10:06:23 -07:00
Matthew Ho
6967484a97
Update groovy import order to match default IntelliJ ( #1708 ) ( #4047 )
...
* Update groovy import order to match default IntelliJ (#1708 )
* organized imports for .groovy files to follow default IntelliJ import settings
* updated intellij-setup.md
* Spotless
* drift
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-09-11 11:53:08 -07:00
Trask Stalnaker
2c044253e8
HttpURLConnection response code edge case ( #4062 )
2021-09-08 07:55:21 -07:00
jack-berg
f89933b67c
Transition http-url-connection module to instrumenter API ( #4044 )
...
* Convert http-url-connection to instrumenter API
* Replace HttpUrlResponse with response status code Integer
2021-09-07 14:54:16 -07:00
Lauri Tulmin
7a705d861e
Move SpringRestTemplateTest ( #3870 )
2021-08-19 12:58:24 +03:00
Anuraag Agrawal
47be4a16b4
Convert HttpClientTest to JUnit ( #3652 )
...
* Migrate HttpClientTest to junit to allow both Java or spock tests.
* More
* Update
* Finish
* Cleanup
* Better stack
* Java 15
* Merge
* Fix name
* Cleanup
* ? extends
* Moar
2021-07-27 21:55:40 +09:00
Anuraag Agrawal
d3b62de8a5
Replace most uses of TraceUtils with testRunner runWithSpan. ( #3582 )
2021-07-15 10:30:34 -07:00
Mateusz Rzeszutek
b9fcb6b498
Reduce CallDepth classes' API surface ( #3497 )
2021-07-06 09:24:19 +02:00
Mateusz Rzeszutek
15ed01d4fc
Change all instrumentation names to io.opentelemetry.{libName}-{libVersion} ( #3411 )
...
* Change all instrumentation names to io.opentelemetry.{libName}-{libVersion}
* minumum supported version
2021-06-30 15:34:36 +02:00
Anuraag Agrawal
761b9c280b
Migrate instrumentation gradle files to kotlin ( #3414 )
...
* Migrate instrumentation gradle files to kotlin
* Convert
* Muzzle
2021-06-28 17:27:12 +09:00
Anuraag Agrawal
785dc6adf2
Rename build files to build.gradle ( #3409 )
...
* Rename build files to build.gradle
* Rename smoke-tests
* Fix already broken
2021-06-25 16:10:31 +09:00
Anuraag Agrawal
deb0e255cf
Use plugins block everywhere for applying plugins ( #3386 )
...
* Use plugins block everywhere for applying plugins
* Actually it's library instrumentation
2021-06-24 11:13:35 +09:00
Anuraag Agrawal
80f43b7a6a
Migrate javaagent-instrumentation to plugin ( #3328 )
...
* Migrate instrumentation.gradle to plugin
* Migrate usages
* Remove old
* Fix
* Revert example
* afterEvaluate
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-06-17 23:13:14 +09:00
Trask Stalnaker
b25ac0f1ad
Clean up old operation name terminology ( #3282 )
2021-06-13 22:10:36 -07:00
Trask Stalnaker
4c80c62ce7
Add unused to remaining advice classes ( #3280 )
...
* Add unused to remaining advice classes
* Add newlines for visual separation
2021-06-14 11:12:02 +09:00
Anuraag Agrawal
7ae23fc694
Migrate HttpClientTest test server to Armeria ( #3225 )
...
* Use Armeria for test HTTP server.
* Continue
* Migrate test http server to Armeria.
* Finish
* Use junit extension
* Remove unused.
* Use localhost for net peer name.
* Block for full response in recator-netty tests.
* Handle split responses in netty41 and akka
* Typo
2021-06-09 15:05:58 +09:00
Anuraag Agrawal
1b63e3265f
Always include server span in HTTP client tests. ( #3214 )
...
* Always include server span in HTTP client tests.
* Scrub
2021-06-08 11:39:06 +09:00
Mateusz Rzeszutek
b8aec6a671
Remove no longer needed NameMatchers class ( #3179 )
2021-06-03 14:36:36 -07:00
Trask Stalnaker
c1c052318b
Move more type instrumentations to top-level classes ( #3118 )
2021-05-28 17:24:19 -07:00
Mateusz Rzeszutek
bb8f515083
Refactor TypeInstrumentation#transformers() method ( #3019 )
...
* Refactor TypeInstrumentation#transformers() method part 1
Add TypeInstrumentation and its implementations
* Refactor TypeInstrumentation#transformers() method part 2
Use the new method in all existing TypeInstrumentation implementations
* Drift
* Spotless
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-05-18 09:50:26 +02:00
Anuraag Agrawal
fe41885ee6
Switch to colon notation for dependencies. ( #2994 )
...
* Switch to colon notation for dependencies.
* Even more cleanup
* Revert mistake
2021-05-15 15:31:06 +09:00
Trask Stalnaker
28d814c813
Add HTTP client error test ( #2932 )
2021-05-13 13:34:45 -07:00
Lauri Tulmin
d29bf39428
Don't set span status to unset ( #2956 )
2021-05-11 16:14:19 -07:00
Trask Stalnaker
10db083e77
Update to OTel API/SDK 1.2.0 ( #2945 )
...
* Update to OTel API/SDK 1.2.0
* TCP.IP -> tcp_ip
* Fix smoke tests
2021-05-10 10:14:07 -07:00
Mateusz Rzeszutek
9c7fae3b04
Extract javaagent-extension-api from tooling & spi ( #2879 )
2021-05-06 23:30:25 -07:00
Lauri Tulmin
9464134ffd
Test failing async http request ( #2812 )
2021-04-19 14:11:27 -07:00
Trask Stalnaker
bd829a6494
Remove duplicate status verification ( #2710 )
2021-04-19 11:41:37 -07:00
Mateusz Rzeszutek
078603caf5
Generate InstrumentationModule#contextStore() with muzzle ( #2775 )
2021-04-13 20:05:01 -07:00
Trask Stalnaker
3bc058b10b
Don't create duplicate headers ( #2727 )
...
* Test infra
* Update examples
* Update instrumentation
* Update tests
* jaxrs-client fixes
* Remove doRequest/doReusedRequest
* Fix muzzle
* some fixes
* fix test
* doc
* not private
* Apply to doRequestWithCallback also
* Update doc
* groovy
* better
* Don't hardcode traceparent
* Reuse request in SpringRestTemplateTest
2021-04-12 12:21:16 +03:00
Anuraag Agrawal
d8f6018ba6
Split HttpClientTest execution methods for sync and callback ( #2675 )
2021-04-06 15:26:01 -07:00
Trask Stalnaker
6ea316e22e
Remove timeout annotations ( #2725 )
2021-04-06 16:36:18 +09:00
Mateusz Rzeszutek
ae23b97ec4
Move and rename NetPeerUtils ( #2548 )
...
* Move and rename NetPeerUtils
* Rename NetPeerUtils to NetPeerAttributes; inject instance instead of using a global var
* Rename SpanAttributeSetter to AttributeSetter (might be used to set on AttributesBuilder in the future, who knows)
* Deprecate default BaseTracer constructor: library instrumentations are supposed to inject all dependencies, the javaagent should explicitly pass globals
* fix compilation failure
* Remove peer.service customization from library instrumentation
2021-03-16 13:50:19 +01:00
Lauri Tulmin
0c7aff28e5
Enable disabled tests for HttpUrlConnection ( #2382 )
...
* Enable disabled tests for HttpUrlConnection
* review fix
2021-02-23 23:34:50 +02:00
Mateusz Rzeszutek
f7b825466d
Fix VerifyError in HttpUrlConnectionInstrumentation ( #2380 )
2021-02-23 17:32:54 +01:00
Anuraag Agrawal
000df967ce
Update to SDK 0.17.0 ( #2338 )
...
* Update to SDK 0.17.0
* Finish
* ottrace
2021-02-19 15:51:55 +09:00
jason plumb
3fc1765446
Include status code for HttpUrlConnection exceptions ( #2272 )
...
* work in progress
* set span state to error and cleanup
* build test
* gotta get spotless
* cleanup
* move getResponseCode advice to its own advice class.
* remove dynamic type from annotation
* Update instrumentation/http-url-connection/javaagent/src/test/groovy/HttpUrlConnectionTest.groovy
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
* Update instrumentation/http-url-connection/javaagent/src/test/groovy/HttpUrlConnectionTest.groovy
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-02-17 22:02:02 +02:00
Mateusz Rzeszutek
ee090aee1e
Support library instrumentations with HttpServerTest & HttpClientTest ( #2299 )
2021-02-16 09:05:23 -08:00
Anuraag Agrawal
fc410706d0
Update to Sdk 0.16.0 ( #2221 )
...
* Update to 0.16.0-SNAPSHOT
* Finish
* Finish
* Update to 0.16.0
* Finish
2021-02-09 18:00:54 +09:00
Mateusz Rzeszutek
93b3a3b289
testing-common refactoring: replace direct AgentTestRunner usage with… ( #2134 )
...
* testing-common refactoring: replace direct AgentTestRunner usage with spock spec
* Updated instrumentation docs
* Fix reactor-core library tests
ReactorCoreTest was getting a tracer from GlobalOpenTelemetry before LibraryTestTrait had a change to initialize the SDK
2021-02-01 11:32:25 +01:00
Anuraag Agrawal
afdde0355b
Update to OTel 0.14.1 ( #2059 )
...
* Update SDK dependency to 0.14.1
* WIP
* Finish
* Cleanup
2021-01-18 13:02:04 +09:00
Pavol Loffay
077d8b64f6
Move common matchers to tooling/bytebuddy/matcher and ignore matchers to tooling/matcher ( #1965 )
2021-01-10 12:35:53 -08:00
Trask Stalnaker
9e38f521f8
HTTP client instrumentation cleanup: http-url-connection ( #1908 )
...
* HttpClientTracer cleanup: http-url-connection
* Checkstyle
* Feedback
2020-12-16 07:52:16 +02:00
Anuraag Agrawal
3b8827b8ab
Update to SDK 0.12.0 ( #1830 )
...
* Update to SDK 0.12.0
* Update error message to the current world.
* Bump referenced smoke test versions
* fixes
* dependency hell
* Suppress unused call
* Bump missed smoke tests
* Bump image, bump smoke tests gRPC version
2020-12-07 17:16:47 +09:00
Trask Stalnaker
65f54e450b
Use Context more in HttpClientTracer ( #1811 )
...
* Use Context more in HttpClientTracer
* Better http-url-connection response object
* Follow database semantic conv for elasticsearch-rest
* Remove unnecessary CallDepth tracking
2020-12-03 11:47:08 -08:00
Trask Stalnaker
ca76c80820
Hardcode expected values in tests ( #1803 )
...
* DEFAULT_SPAN_NAME
* TEMP_DESTINATION_NAME
* LoggingContextConstants
* Remove unnecessary dependencies
* Hardcode expected normalized queries in tests
* Spotless
2020-11-30 09:16:59 +02:00
Trask Stalnaker
26f254b10d
Create javaagent dirs for all instrumentations, part 2 ( #1794 )
2020-11-28 22:26:49 -08:00
Trask Stalnaker
5f263644da
Create javaagent dirs for all instrumentations ( #1668 )
...
* Create javaagent dirs for all instrumentation
* Add note about kotlin coroutine library instrumentation
* Feedback
2020-11-28 21:04:16 -08:00