Commit Graph

337 Commits

Author SHA1 Message Date
Mateusz Rzeszutek 4d34d90437
Do not set the http.route attribute in JSF instrumentations by default (#5819)
* Do not set the http.route attribute in JSF instrumentations by default

* code review comments
2022-04-14 09:07:05 -07:00
Anuraag Agrawal e58d39d4ad
Update to OTel 1.13 (#5799)
* Update to OTel 1.13

* Fix test

* Foo

* Fix app server test and start yak shaving

* Yak

* Yak

* groovy fail

* Yak

* GROOVY

* yak farm
2022-04-13 13:16:32 +03:00
Lauri Tulmin 4ad44909ca
Faster type matching (#5724)
* Faster type matching

* make findLoadedClass accessible on java17

* enable jaxrs instrumentation for quarkus test

* fix websphere

* fix muzzle

* javadoc formating

* ignore classes that are know to fail to load for virtual field transforms

* add back jaxrs and jaxws annotation instrumentations

* Apply suggestions from code review

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* fix compile error

* comments

* replace deprecated method usage

* add comment

* add an spi to get access to bootstrap proxy from muzzle module

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-04-08 10:38:50 -07:00
Anuraag Agrawal 333e7bbd50
Migrate apache-httpclient-4.3 tests to Java. (#5774)
* Migrate apache-httpclient-4.3 tests to Java.

* Spot
2022-04-08 15:04:23 +09:00
Anurag Agarwal 13a851ba24
Apache httpasyncclient 5.x (#5697)
* Copies code for httpasyncclient-4.1 and creates instrumentation for 5.0

* Makes import changes for http client 5

* Decorate request channel and changes type in tests

* Corrects test cases

* Corrects most of the test cases

* Forces http1 protocol to pass the test cases

* Merge supported libraries for async client

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

* Remove http.sceme and http.target attr from test

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

* Removes not needed null check for status code

* Replaces slf4j loggers with JUL

* Inlined flavor extraction in attributes getter

* Uses parameter placeholders for logging

* Uses success endpoint to test flavor

* Merges httpasyncclient and httpclient modules

* Merges http client 5 modules

* Update java-8 compatible changes

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

* Change instrumentation name

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

* Adds missing import statement

* Rename packages

* Java 8

* Reverts adding 5.0+ support from supporting libraries

* Deleted hanging module

* Uses seconds instead of ms in http test

* Merges both classic and async client implementations

* Moves http client all test cases to java tests

* Uses abstract apache test class and moves boilerplate

* Uses connection and read timeouts from ApacheHttpClientTest

* Refactors remaining classes, shifts logic to HttpUtils

* Renames HttpUtils to ApacheHttpClientUtils

* Corrects failing code style error

* Corrects build errors

* Renames package to have http client version

* Corrects package name

* Uses instrumenter as static import

* Inline utility methods

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-04-07 08:45:06 -07:00
Lauri Tulmin 5267462b06
Fix http concurrency test with large responses (#5648)
* Debug http client concurrency test failures

* debugging

* context porpagation to callbacks isn't really implemented

* verify that request succeeds in single connection concurrency test

* spotless

* verify request status in http client concurrency test

* update comment

* remove large response

* Trigger Build

* Update instrumentation/netty/netty-3.8/javaagent/src/test/groovy/Netty38ClientTest.groovy

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-03-25 10:03:22 -07:00
Anuraag Agrawal 14372adb68
Migrate Guava tests to Java (#5668)
* Migrate Guava tests to Java

* Update instrumentation/guava-10.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/guava/ListenableFutureTest.java

Co-authored-by: Lauri Tulmin <tulmin@gmail.com>

* Workaround inline mock issue

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
2022-03-24 14:14:09 +09:00
Anuraag Agrawal 213057d057
Run check during testing and assemble during building (#5619) 2022-03-18 13:48:51 +09:00
Lauri Tulmin a563d6063c
Handle failed request in http server concurrency tests (#5605) 2022-03-17 19:44:51 -07:00
Anuraag Agrawal d2401e14a9
Migrate AkkaActorTest to scala (#5582) 2022-03-16 08:08:10 +09:00
Anuraag Agrawal 046e4374bf
Migrate Armeria server test to Java (#5570) 2022-03-14 18:30:25 +09:00
Lauri Tulmin 8d513f9099
Make tests provide expected exception instance instead of class (#5540)
* Make tests provide expected exception instance instead of class

* exception is optional
2022-03-11 14:24:03 +02:00
Lauri Tulmin e9c1efece2
Update to Groovy 4 (#5532)
* Update to Groovy 4

* exclude spock from grails tests, update comment

* Update instrumentation/grails-3.0/javaagent/build.gradle.kts

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-03-09 15:07:41 -08:00
Mateusz Rzeszutek f6cca58f1f
Deprecate CapturedHttpHeaders and replace it with builder methods (#5533) 2022-03-09 12:21:32 -08:00
Lauri Tulmin b3496381f1
Write http server tests in java (#5501)
* Write http server tests in java

* typo

* Apply suggestions from code review

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* add comments

* address review comments

* use Predicate

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-03-08 14:21:59 -08:00
Anuraag Agrawal 9ed35fd286
Update to OTel 1.12 (#5513) 2022-03-07 15:38:50 +09:00
Trask Stalnaker 0a6b87eb69
Remove server span peer name (#5404)
* Fix server -> client reference

* Remove server span peer name
2022-02-27 11:06:20 -08:00
Anuraag Agrawal 698503cbec
Remove obsolete route assertion (#5398) 2022-02-18 08:53:45 -08:00
Anuraag Agrawal b9fac11c90
Migrate AWS Lambda tests to Java (#5315)
* Migrate AWS Lambda tests to Java

* Only assert OTLP fields for links
2022-02-08 15:27:20 +09:00
Trask Stalnaker 1077258263
Add InternalJavadoc custom error prone check (#5277)
* Add InternalJavadoc custom error prone check

* Add example usage

* Move to conventions

* Revert "Move to conventions"

This reverts commit d8a8209b59.

* Just get it working

* Clearer error message

* versions

* Apply almost everywhere

* feedback

* Always at the end of javadoc

* Fix test

* Missed (at least) one

* No longer internal

* Fix NPE

* Spotless

* Convert awslambda Java test to JUnit 5 so can reduce visibility

* Reduce visibility

* Rename the check

* More

* Move into errorprone-convention

* Fix UserExcludedClassesConfigurerTest
2022-02-01 17:54:57 -08:00
Trask Stalnaker 23b33adb0a
Auto-format groovy files in Intellij (#5260)
* Auto-format groovy files in Intellij

* A bit of clean up
2022-01-28 09:29:46 -08:00
Mateusz Rzeszutek 9381d5a264
Expected server span name for null route should be HTTP GET (#5197) 2022-01-21 19:35:48 -08:00
Mateusz Rzeszutek 540e4cfafb
Remove HttpServerTest#extraAttributes() method (#5176)
* Remove HttpServerTest#extraAttributes() method

* fix ktor tests

* fix ratpack and restlet tests

* fix servlet2 tests

* Fix webflux and vertx tests
2022-01-20 10:41:41 -08:00
Mateusz Rzeszutek 4f29770f73
Remove old TraceUtils and use InstrumentationTestRunner#run*Span() (almost) everywhere (#5160)
* Remove old TraceUtils and use InstrumentationTestRunner#run*Span() (almost) everywhere

* Fix HTTP server tests

* Fix compilation failure

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-18 13:42:53 -08:00
Anuraag Agrawal b7a95857c7
Fix some java lint warnings (#5120)
* Convert InstrumentationTestRunner from interface to abstract class

* Foo

* Commit

* Revert unintended
2022-01-17 10:26:03 -08:00
Mateusz Rzeszutek 872c6c7d80
Add `http.route` to the server span when `ServerSpanNaming` is updated (#5086)
* Add `http.route` to the server span when `ServerSpanNaming` is updated

* fix camel tests

* fix test compilation failure

* assert route in camel instrumentation
2022-01-14 13:52:06 -08:00
Anuraag Agrawal a3681901ff
Convert InstrumentationTestRunner from interface to abstract class (#5112) 2022-01-14 10:21:31 -08:00
Mateusz Rzeszutek 9299567a96
Micrometer library instrumentation (#5063) 2022-01-12 20:06:27 -08:00
Nikita Salnikov-Tarnovski 25550e0a63
Stop using deprecated constructor (#5040)
* Stop using deprecated constructor

* Try to fix the build
2022-01-07 11:47:54 -08:00
Anuraag Agrawal f6bcd76219
Update errorprone (#5016)
* Update errorprone

* gwt

* Remove unnecessary final

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-06 14:21:56 -08:00
Lauri Tulmin 55e44d790c
ktor net attribute extraction (#5027)
* ktor net attribute extraction

* spotless
2022-01-06 12:03:59 -08:00
Lauri Tulmin 12c15b226f
Capture servlet request parameters at the end of the request (#5019)
* Capture servlet request parameters at the end of the request

* add comment
2022-01-06 12:02:42 -08:00
Trask Stalnaker e5da618196
Add logs to testing infra (#4927)
* Add logs to testing infra

* Drift
2021-12-17 18:23:42 -08:00
Lauri Tulmin be4c45880a
Wait for request to return result in http client async concurrency test (#4910) 2021-12-16 16:20:38 +02:00
Trask Stalnaker 6d254b3ad1
Additional http.status_code assertion (#4872) 2021-12-13 09:25:48 -08:00
Trask Stalnaker ab0d5565bf
Verify case-insensitive TextMapGetters (#4847)
* Verify case-insensitive TextMapGetters

* Separate test
2021-12-10 10:01:31 -08:00
Lauri Tulmin bba587ea01
Retry strict context check failures for library instrumenation tests (#4826) 2021-12-07 15:35:18 -08:00
Trask Stalnaker 32e3deb9cf
Update tests now that netty captures http.scheme (#4807) 2021-12-06 11:57:33 -08:00
Trask Stalnaker ce4cef76f9
Clean up groovy assertions (#4805) 2021-12-05 23:23:58 -08:00
Lauri Tulmin 61b0dd3698
Capture servlet request parameters (#4703)
* Capture servlet request parameters

* use concurrenthashmap for cache
2021-12-05 21:25:31 -08:00
Mateusz Rzeszutek f2c2b755d2
Make AgentClassLoaderAccess methods public (#4770)
* Make AgentClassLoaderAccess methods public

* Update testing-common/src/main/java/io/opentelemetry/javaagent/testing/common/AgentClassLoaderAccess.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-12-02 12:48:46 +01:00
Lauri Tulmin 313979a467
Fix http.url handing in vert.x 3 http client (#4739)
* Fix http.url handing in vert.x 3 http client

* correct version

* fix build

* if https test is disabled use http for non routable aadress test

* if https test is disabled use http for non routable aadress test

* use StringBuilder
2021-12-01 10:51:53 -08:00
Mateusz Rzeszutek f948ef8051
Use containerIpAddress instead of hard-coded 127.0.0.1 in rabbit tests (#4745)
* Use containerIpAddress instead of hard-coded 127.0.0.1 in rabbit tests

* Fix a situation where testcontainers returns 'localhost' instead of IP

* Fix a situation where testcontainers returns 'localhost' instead of IP

* Don't use the getContainerIpAddress() method, it'll be deprecated anyways
2021-11-30 15:25:23 -08:00
Nikita Salnikov-Tarnovski b6b4cd67f0
Clean up of tests logging (#4744) 2021-11-30 16:19:09 +02:00
Lauri Tulmin 10288c6f25
Work around jvm crash on early 1.8 (#4345)
* Work around jvm crash on early 1.8

* skip retransform if class was already transformed during load

* fix imports after rebase

* add test

* disable test on windows
2021-11-29 22:47:10 -08:00
Nikita Salnikov-Tarnovski f525f3e03f
Some logging cleanup (#4734) 2021-11-29 09:45:23 -08:00
Nikita Salnikov-Tarnovski 821a4b870b
Drop instrumentation-api-caching module and move weak cache implementation to instrumentation-api (#4667)
* Drop instrumentation-api-caching module and move weak cache implementation to instrumentation-api

* Some test fixes

* Some cleanup

* Temporary workaround for using weak values in FutureListenerWrappers

* Spotless

* Update ClassNames and SpanNames

* Compilation and comment

* Add bounded cache and clean interface

* Polish

* Add comment

* Vendor ConcurrentLinkedHashMap in

* Let errorprone ignore vendored CLHM for now

* Keep license in java files too

* Convert Netty wrapper cache to VirtualField

* Work around lambda instrumentation failure

Ideally we would ignore instrumenting helper classes...

* Revert "Work around lambda instrumentation failure"

This reverts commit 6d63815b44.

* Revert "Convert Netty wrapper cache to VirtualField"

This reverts commit dac1522a3f.

* Handle cleared weak values

* Fix comment

* Delete instrumentation-api-caching

* Copy in weak-lock-free

* Remove caffeine remnants

* Fix checkstyle

* Rename BoundedCache to MapBackedCached

* Remove duplicate LICENSE

* Remove outdated comment

* Sync with SDK copy of weaklockfree

* Enable checkstyle:off comment

* Re-generate license report

* Move NOTICE file to package-info.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-11-24 09:05:12 -08:00
Lauri Tulmin 31d87162f3
Print out thread dump on strict context check failure (#4664)
* Print out thread dump on strict context check failure

* suppress warning
2021-11-18 15:42:54 +02:00
Lauri Tulmin c57d4e00b6
Correct formatting of HttpClientTest comments (#4654)
* Correct formatting of HttpClientTest comments

* add <pre> tags
2021-11-17 12:03:51 +02:00
Anuraag Agrawal 6063a16f54
Update to OTel 1.9 (#4634)
* Update to OTel 1.9

* Check null
2021-11-15 17:56:53 +09:00