Lauri Tulmin
14dc34e50e
Capture http.route for akka-http ( #10039 )
...
Co-authored-by: jason plumb <75337021+breedx-splk@users.noreply.github.com>
2023-12-12 11:10:17 -08:00
Mateusz Rzeszutek
65ee9510f5
Rename the `instrumentation-api-semconv` module into `instrumentation-api-incubator` ( #9985 )
2023-12-04 08:28:10 +01:00
Mateusz Rzeszutek
dc81aae72f
Move HTTP classes to instrumentation-api ( #9977 )
2023-12-01 12:04:06 +01:00
Mateusz Rzeszutek
d6c2aff7c2
Change `http.request.body.size` and `http.response.body.size` attributes from recommended to opt-in ( #9799 )
2023-11-02 11:20:50 -07:00
Mateusz Rzeszutek
96d59d5539
Refactor HTTP server `server.address` and `server.port` attributes ( #9760 )
2023-10-30 08:55:30 +01:00
Matthieu MOREL
9a1c178d58
PeerService Resolver ( #9061 )
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
Co-authored-by: jason plumb <75337021+breedx-splk@users.noreply.github.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Lauri Tulmin <ltulmin@splunk.com>
2023-10-12 07:52:05 -07:00
Lauri Tulmin
8c00dcb76d
Use namedOneOf instead of adding the same advice twice with different methods ( #9571 )
2023-09-28 19:57:28 +03:00
Lauri Tulmin
746606b391
Fix akka http latest dep tests ( #9573 )
2023-09-28 08:23:26 -07:00
Mateusz Rzeszutek
3136916749
Add HTTP server tests for non standard methods ( #9446 )
2023-09-15 08:43:36 -07:00
Lauri Tulmin
d157b68efb
Use HTTP instead of non-known method in http span name ( #9441 )
...
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2023-09-13 10:14:30 -07:00
Mateusz Rzeszutek
133de2486a
Extract HTTP server experimental metrics to a separate class ( #9259 )
2023-08-30 08:49:42 -07:00
Mateusz Rzeszutek
d7a34f90ba
Refactor and rename `HttpClientResend` and `HttpRouteHolder` ( #9280 )
...
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2023-08-26 00:37:25 +00:00
Lauri Tulmin
23c20dadaf
Add http client test with non-standard request method ( #9204 )
2023-08-18 09:01:53 +03:00
Mateusz Rzeszutek
27faf8f5b7
Make `HttpServerAttributesGetter` extend `NetServerAttributesGetter` ( #9088 )
2023-08-02 08:52:44 -07:00
Mateusz Rzeszutek
d81630331b
Make `HttpClientAttributesGetter` extend `NetClientAttributesGetter` ( #9015 )
2023-07-31 11:09:09 -07:00
Mateusz Rzeszutek
59e2da5aa3
Extract HTTP client experimental metrics to a separate class ( #8769 )
2023-07-18 08:34:39 -07:00
Mateusz Rzeszutek
cc8160cffb
Support the `http.request.method_original` attribute ( #8779 )
2023-07-17 09:41:41 +00:00
Mateusz Rzeszutek
cde2e70148
Implement new stable server semantic conventions ( #8663 )
2023-06-13 11:07:59 +02:00
Mateusz Rzeszutek
506ccb6b7d
Implement new stable network semantic conventions ( #8616 )
2023-06-12 16:51:47 +02:00
Mateusz Rzeszutek
5b03ae655f
Implement new stable HTTP semantic conventions ( #8632 )
2023-06-08 20:02:45 -07:00
Mateusz Rzeszutek
8ee63d4441
Implement new stable URL semantic conventions ( #8491 )
2023-06-05 15:22:22 +00:00
Mateusz Rzeszutek
c10108bbe0
Enable HTTP client read timeout tests by default ( #8530 )
2023-05-19 10:24:49 -07:00
Mateusz Rzeszutek
48f85fb5f2
Replace target with path and query in HttpServerAttributesGetter ( #8382 )
2023-05-11 12:47:00 -07:00
Lauri Tulmin
8e016a7bf4
Fix flaky http pipelining test on akka http ( #8437 )
2023-05-09 11:18:34 +03:00
Lauri Tulmin
413890d246
Test http pipelining ( #8403 )
2023-05-04 10:23:48 +03:00
Mateusz Rzeszutek
e3944a53a5
Make net.transport an optional attribute ( #8279 )
2023-04-20 08:14:03 -07:00
Trask Stalnaker
66f4c80d35
Update instrumentation suppression keys that do not align with their module name ( #7811 )
2023-04-11 10:54:42 -07:00
Lauri Tulmin
56eae8109b
Implement HttpServerResponseCustomizer support for Akka-http ( #8273 )
2023-04-11 10:54:03 -07:00
Mateusz Rzeszutek
5b271c4917
Switch from http.flavor to net.protocol.* in HTTP server instrumentat… ( #8244 )
2023-04-09 08:47:33 -07:00
Mateusz Rzeszutek
f501569106
Switch from http.flavor to net.protocol.* in HTTP client instrumentat… ( #8131 )
2023-04-07 13:39:42 +02:00
Lauri Tulmin
d87f40c9c7
Instrument akka-http bindAndHandle ( #8174 )
...
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/8143
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/6081
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/5137
Using the same approach as in
https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/6243
and as used by DataDog. Unlike in #6243 this pr does not attempt to
prevent leaking scopes into actors but rather instruments the actor to
reset context to get rid of the leaked scopes (DataDog does the same).
2023-04-05 17:11:05 +03:00
Mateusz Rzeszutek
d9b0eee503
Remove deprecated instrumentation-api-semconv code ( #7838 )
2023-02-16 13:16:52 -08:00
Mateusz Rzeszutek
ea237e3a80
Update HTTP span name extractors ( #7730 )
...
Implements
https://github.com/open-telemetry/opentelemetry-specification/issues/2998
---------
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2023-02-14 07:40:05 -08:00
jason plumb
db6b764421
More HTTP testing refactor prework ( #7630 )
...
This is another follow-up from #7616 . This makes the test options class
immutable and uses `@AutoValue` and `@AutoValue.Builder`. As a result, a
bunch of the configuration/setup code for these said options now flings
around a builder instance. This isn't great, but I think it's an
incremental improvement that can be seen in the `@BeforeAll
AbstractHttpClientTest.setupOptions()` method, where the immutable
options are (finally) instantiated.
2023-01-23 09:42:32 -08:00
Mateusz Rzeszutek
e1895e548c
Rename all methods in all Getters to use the `get*()` naming scheme ( #7619 )
...
Resolves #6562
This PR only contains renames; the actual content is in the `*Getter`
interfaces, the rest of changes is just IntelliJ doing its job.
2023-01-23 09:28:11 +00:00
jason plumb
c5e384fe9f
Http testing refactor prework ( #7623 )
...
As part of discussions #7616 , the idea of trying to do a more piecemeal
approach came up. A reasonable ask.
This is the first step in refactoring the http client tests. It factors
out the `HttpClientResult` inner class of the `AbstractHttpClientTest`
so that this can be reused by new test framework later. It also factors
the relevant abstract methods in the abstract class to a new type
adapter, which will also be reused.
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2023-01-20 18:20:42 +00:00
Mateusz Rzeszutek
95ec4a8c1f
HTTP semconv: filter out default peer/host ports ( #7258 )
...
After a loooong break, the next part of the HTTP semconv implementation:
filtering out default HTTP ports, client and server.
> [5]: If not default (80 for http scheme, 443 for https).
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/http.md#http-client
2022-11-22 17:14:20 +00:00
Trask Stalnaker
f488d94403
Capture net.host.name for netty ( #6892 )
...
This may be a regression in 1.19.0 because you can no longer reconstruct
the original url for netty server spans (previously `http.host` was
captured which could be used).
2022-10-19 09:21:50 -07:00
Mateusz Rzeszutek
77035fc88c
Extract `net.peer.{name,port}` on start for CLIENT spans ( #6828 )
...
The [HTTP
spec](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/http.md#http-client )
says these two attributes must be provided at span creation time - I
think it makes sense to extend it over to all `net`-related
instrumentations, cause these are supposed to be the logical peer
name/port, which are supposed to be known before the connection is
started/exchange is made.
2022-10-10 16:00:19 -07:00
Mateusz Rzeszutek
714ba9189e
Remove deprecated `http.host` and `http.server_name` attributes ( #6709 )
...
... and make sure the `TemporaryMetricsView` follows the current spec
2022-09-24 11:02:21 -07:00
Mateusz Rzeszutek
f50f1fed3b
Fix instrumentation-api-semconv packages ( #6590 )
...
* Fix instrumentation-api-semconv packages
* Move test
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-09-12 14:51:27 -07:00
Trask Stalnaker
f1774cabe2
Update net semantic convention changes ( #6268 )
...
* New net conventions: option a
* Feedback + sock.family + sock.peer.name
* peer.service + tests
* server net attributes attempt 1
* server net attributes attempt 2
* Javadoc
* Revisions
* Apply to instrumentations
* Feedback
* One more default method
* Spotless
* Fix javadoc
2022-08-18 09:02:23 -07:00
Mateusz Rzeszutek
6cd79b2a94
Deprecate the 2-arg variant of HttpCommonAttributesGeter#statusCode() ( #6466 )
...
* Deprecate the 2-arg variant of HttpCommonAttributesGeter#statusCode()
* fix liberty
2022-08-12 17:11:11 -07:00
Trask Stalnaker
68a9f20eb3
Enable PrivateConstructorForUtilityClass errorprone check ( #6427 )
...
* PrivateConstructorForUtilityClass
* Advice
* More advice
* More
* More advice
* More
* Spotless
* Fix
* Fix
* Fix
* A better solution
* Revert
* More
* Fix
* Spotless
* Fix
2022-08-10 11:30:22 +03:00
Mateusz Rzeszutek
b2c90c79b5
Extract HTTP request & response content length from headers ( #6415 )
...
* Extract HTTP request & response content length from headers
* remove unused method
* fix camel tests
* fix google http client tests
* fix HttpUrlConnection tests
* fix k8s and jaxrs tests
* fix aws tests
* actually fix aws tests 🤞
* fix elasticsearch tests
* fix ratpack tests
* fix spring webflux tests
* fix vertx tests
* fix reactor netty tests
2022-08-05 10:55:47 -07:00
Mateusz Rzeszutek
5a152cd289
Deprecate uncompressed content length HTTP attributes ( #6383 )
2022-07-29 06:17:38 +02:00
Mateusz Rzeszutek
82b39b1012
Rename `newInstrumenter()` into `buildInstrumenter()` ( #6363 )
...
* Rename newInstrumenter() into buildInstrumenter()
* spotless
2022-07-25 12:02:46 -07:00
Mateusz Rzeszutek
3af56e7d22
InstrumentationConfig part 3: HTTP headers and peer service mappings ( #6302 )
2022-07-15 14:52:52 -07:00
Mateusz Rzeszutek
87b412fb40
Instrumentation API changes: OperationMetrics, OperationListener ( #6016 )
...
* Instrumentation API changes: OperationMetrics, OperationListener
* errorprone
2022-05-12 11:16:46 -07:00
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