Fix file formatting (#256)

This commit is contained in:
Trask Stalnaker 2020-03-19 18:57:05 -07:00 committed by GitHub
parent d70f4ded94
commit bdf2b8eafd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 271 additions and 291 deletions

View File

@ -18,23 +18,6 @@ package io.opentelemetry.auto.bootstrap.instrumentation.decorator
import io.opentelemetry.auto.config.Config
import io.opentelemetry.auto.instrumentation.api.MoreTags
import io.opentelemetry.auto.instrumentation.api.Tags
/*
* Copyright 2020, OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import io.opentelemetry.trace.Span
import static io.opentelemetry.auto.test.utils.ConfigUtils.withConfigOverride

View File

@ -18,7 +18,7 @@ class RangeQueryTest extends Specification {
final VersionRangeRequest rangeRequest = new VersionRangeRequest()
rangeRequest.setRepositories(MuzzlePlugin.MUZZLE_REPOS)
rangeRequest.setArtifact(directiveArtifact)
// This call makes an actual network request, which may fail if network access is limited.
final VersionRangeResult rangeResult = system.resolveVersionRange(session, rangeRequest)

View File

@ -40,7 +40,7 @@ class ExporterAdaptersTest extends Specification {
then:
file != null
where:
exporter << [loggingExporterJar, jaegerExporterJar]
}

View File

@ -14,8 +14,8 @@
* limitations under the License.
*/
import io.opentelemetry.auto.bootstrap.AgentClassLoader
import io.opentelemetry.auto.config.Config
import io.opentelemetry.auto.bootstrap.instrumentation.decorator.HttpClientDecorator
import io.opentelemetry.auto.config.Config
import io.opentelemetry.auto.instrumentation.api.MoreTags
import io.opentelemetry.auto.instrumentation.api.SpanTypes
import io.opentelemetry.auto.instrumentation.api.Tags

View File

@ -3,12 +3,12 @@
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="warn">
<AppenderRef ref="Console" />
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>

View File

@ -24,26 +24,26 @@ import okhttp3.internal.http.HttpMethod
class OkHttp3Test extends HttpClientTest {
def client = new OkHttpClient()
def client = new OkHttpClient()
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def body = HttpMethod.requiresRequestBody(method) ? RequestBody.create(MediaType.parse("text/plain"), "") : null
def request = new Request.Builder()
.url(uri.toURL())
.method(method, body)
.headers(Headers.of(headers)).build()
def response = client.newCall(request).execute()
callback?.call()
return response.code()
}
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def body = HttpMethod.requiresRequestBody(method) ? RequestBody.create(MediaType.parse("text/plain"), "") : null
def request = new Request.Builder()
.url(uri.toURL())
.method(method, body)
.headers(Headers.of(headers)).build()
def response = client.newCall(request).execute()
callback?.call()
return response.code()
}
@Override
String component() {
return OkHttpClientDecorator.DECORATE.getComponentName()
}
@Override
String component() {
return OkHttpClientDecorator.DECORATE.getComponentName()
}
boolean testRedirects() {
false
}
boolean testRedirects() {
false
}
}

View File

@ -37,80 +37,80 @@ import static io.opentelemetry.auto.test.base.HttpServerTest.ServerEndpoint.SUCC
import static io.opentelemetry.trace.Span.Kind.INTERNAL
class PlayServerTest extends HttpServerTest<Server> {
@Override
Server startServer(int port) {
def router =
new RoutingDsl()
.GET(SUCCESS.getPath()).routeTo({
controller(SUCCESS) {
Results.status(SUCCESS.getStatus(), SUCCESS.getBody())
}
} as Supplier)
.GET(QUERY_PARAM.getPath()).routeTo({
controller(QUERY_PARAM) {
Results.status(QUERY_PARAM.getStatus(), QUERY_PARAM.getBody())
}
} as Supplier)
.GET(REDIRECT.getPath()).routeTo({
controller(REDIRECT) {
Results.found(REDIRECT.getBody())
}
} as Supplier)
.GET(ERROR.getPath()).routeTo({
controller(ERROR) {
Results.status(ERROR.getStatus(), ERROR.getBody())
}
} as Supplier)
.GET(EXCEPTION.getPath()).routeTo({
controller(EXCEPTION) {
throw new Exception(EXCEPTION.getBody())
}
} as Supplier)
return Server.forRouter(router.build(), port)
}
@Override
void stopServer(Server server) {
server.stop()
}
@Override
String component() {
return NettyHttpServerDecorator.DECORATE.getComponentName()
}
@Override
boolean hasHandlerSpan() {
true
}
boolean testExceptionBody() {
// I can't figure out how to set a proper exception handler to customize the response body.
false
}
@Override
void handlerSpan(TraceAssert trace, int index, Object parent, String method = "GET", ServerEndpoint endpoint = SUCCESS) {
trace.span(index) {
operationName "play.request"
spanKind INTERNAL
errored endpoint == ERROR || endpoint == EXCEPTION
childOf((SpanData) parent)
tags {
"$MoreTags.SPAN_TYPE" SpanTypes.HTTP_SERVER
"$Tags.COMPONENT" PlayHttpServerDecorator.DECORATE.getComponentName()
"$MoreTags.NET_PEER_IP" { it == null || it == "127.0.0.1" } // Optional
"$Tags.HTTP_URL" String
"$Tags.HTTP_METHOD" String
"$Tags.HTTP_STATUS" Long
if (endpoint == EXCEPTION) {
errorTags(Exception, EXCEPTION.body)
}
if (endpoint.query) {
"$MoreTags.HTTP_QUERY" endpoint.query
}
}
@Override
Server startServer(int port) {
def router =
new RoutingDsl()
.GET(SUCCESS.getPath()).routeTo({
controller(SUCCESS) {
Results.status(SUCCESS.getStatus(), SUCCESS.getBody())
}
} as Supplier)
.GET(QUERY_PARAM.getPath()).routeTo({
controller(QUERY_PARAM) {
Results.status(QUERY_PARAM.getStatus(), QUERY_PARAM.getBody())
}
} as Supplier)
.GET(REDIRECT.getPath()).routeTo({
controller(REDIRECT) {
Results.found(REDIRECT.getBody())
}
} as Supplier)
.GET(ERROR.getPath()).routeTo({
controller(ERROR) {
Results.status(ERROR.getStatus(), ERROR.getBody())
}
} as Supplier)
.GET(EXCEPTION.getPath()).routeTo({
controller(EXCEPTION) {
throw new Exception(EXCEPTION.getBody())
}
} as Supplier)
return Server.forRouter(router.build(), port)
}
@Override
void stopServer(Server server) {
server.stop()
}
@Override
String component() {
return NettyHttpServerDecorator.DECORATE.getComponentName()
}
@Override
boolean hasHandlerSpan() {
true
}
boolean testExceptionBody() {
// I can't figure out how to set a proper exception handler to customize the response body.
false
}
@Override
void handlerSpan(TraceAssert trace, int index, Object parent, String method = "GET", ServerEndpoint endpoint = SUCCESS) {
trace.span(index) {
operationName "play.request"
spanKind INTERNAL
errored endpoint == ERROR || endpoint == EXCEPTION
childOf((SpanData) parent)
tags {
"$MoreTags.SPAN_TYPE" SpanTypes.HTTP_SERVER
"$Tags.COMPONENT" PlayHttpServerDecorator.DECORATE.getComponentName()
"$MoreTags.NET_PEER_IP" { it == null || it == "127.0.0.1" } // Optional
"$Tags.HTTP_URL" String
"$Tags.HTTP_METHOD" String
"$Tags.HTTP_STATUS" Long
if (endpoint == EXCEPTION) {
errorTags(Exception, EXCEPTION.body)
}
if (endpoint.query) {
"$MoreTags.HTTP_QUERY" endpoint.query
}
}
}
}
}

View File

@ -46,10 +46,7 @@ public class TracingClientResponseSubscriber implements CoreSubscriber<ClientRes
this.clientRequest = clientRequest;
this.context = context;
spanRef = new AtomicReference<>(span);
this.parentSpan =
parentSpan == null
? DefaultSpan.getInvalid()
: parentSpan;
this.parentSpan = parentSpan == null ? DefaultSpan.getInvalid() : parentSpan;
}
@Override

View File

@ -30,37 +30,37 @@ import java.util.concurrent.CompletableFuture
@Timeout(10)
class VertxHttpClientTest extends HttpClientTest {
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())
@Shared
HttpClient httpClient = vertx.createHttpClient()
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())
@Shared
HttpClient httpClient = vertx.createHttpClient()
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
CompletableFuture<HttpClientResponse> future = new CompletableFuture<>()
def request = httpClient.request(HttpMethod.valueOf(method), uri.port, uri.host, "$uri")
headers.each { request.putHeader(it.key, it.value) }
request.handler { response ->
callback?.call()
future.complete(response)
}
request.end()
return future.get().statusCode()
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
CompletableFuture<HttpClientResponse> future = new CompletableFuture<>()
def request = httpClient.request(HttpMethod.valueOf(method), uri.port, uri.host, "$uri")
headers.each { request.putHeader(it.key, it.value) }
request.handler { response ->
callback?.call()
future.complete(response)
}
request.end()
@Override
String component() {
return NettyHttpClientDecorator.DECORATE.getComponentName()
}
return future.get().statusCode()
}
@Override
boolean testRedirects() {
false
}
@Override
String component() {
return NettyHttpClientDecorator.DECORATE.getComponentName()
}
@Override
boolean testConnectionFailure() {
false
}
@Override
boolean testRedirects() {
false
}
@Override
boolean testConnectionFailure() {
false
}
}

View File

@ -31,52 +31,52 @@ import java.util.concurrent.CompletableFuture
@Timeout(10)
class VertxRxCircuitBreakerWebClientTest extends HttpClientTest {
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())
@Shared
WebClient client = WebClient.create(vertx)
@Shared
CircuitBreaker breaker = CircuitBreaker.create("my-circuit-breaker", vertx,
new CircuitBreakerOptions()
.setTimeout(-1) // Disable the timeout otherwise it makes each test take this long.
)
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())
@Shared
WebClient client = WebClient.create(vertx)
@Shared
CircuitBreaker breaker = CircuitBreaker.create("my-circuit-breaker", vertx,
new CircuitBreakerOptions()
.setTimeout(-1) // Disable the timeout otherwise it makes each test take this long.
)
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def request = client.request(HttpMethod.valueOf(method), uri.port, uri.host, "$uri")
headers.each { request.putHeader(it.key, it.value) }
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def request = client.request(HttpMethod.valueOf(method), uri.port, uri.host, "$uri")
headers.each { request.putHeader(it.key, it.value) }
def future = new CompletableFuture<Integer>()
def future = new CompletableFuture<Integer>()
breaker.executeCommand({ command ->
request.rxSend().doOnSuccess {
command.complete(it)
}.doOnError {
command.fail(it)
}.subscribe()
}, {
callback?.call()
if (it.succeeded()) {
future.complete(it.result().statusCode())
} else {
future.completeExceptionally(it.cause())
}
})
return future.get()
}
breaker.executeCommand({ command ->
request.rxSend().doOnSuccess {
command.complete(it)
}.doOnError {
command.fail(it)
}.subscribe()
}, {
callback?.call()
if (it.succeeded()) {
future.complete(it.result().statusCode())
} else {
future.completeExceptionally(it.cause())
}
})
return future.get()
}
@Override
String component() {
return NettyHttpClientDecorator.DECORATE.getComponentName()
}
@Override
String component() {
return NettyHttpClientDecorator.DECORATE.getComponentName()
}
@Override
boolean testRedirects() {
false
}
@Override
boolean testRedirects() {
false
}
@Override
boolean testConnectionFailure() {
false
}
@Override
boolean testConnectionFailure() {
false
}
}

View File

@ -27,35 +27,35 @@ import spock.lang.Timeout
@Timeout(10)
class VertxRxWebClientTest extends HttpClientTest {
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())
@Shared
WebClient client = WebClient.create(vertx)
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())
@Shared
WebClient client = WebClient.create(vertx)
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def request = client.request(HttpMethod.valueOf(method), uri.port, uri.host, "$uri")
headers.each { request.putHeader(it.key, it.value) }
return request
.rxSend()
.doOnSuccess { response -> callback?.call() }
.map { it.statusCode() }
.toObservable()
.blockingFirst()
}
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def request = client.request(HttpMethod.valueOf(method), uri.port, uri.host, "$uri")
headers.each { request.putHeader(it.key, it.value) }
return request
.rxSend()
.doOnSuccess { response -> callback?.call() }
.map { it.statusCode() }
.toObservable()
.blockingFirst()
}
@Override
String component() {
return NettyHttpClientDecorator.DECORATE.getComponentName()
}
@Override
String component() {
return NettyHttpClientDecorator.DECORATE.getComponentName()
}
@Override
boolean testRedirects() {
false
}
@Override
boolean testRedirects() {
false
}
@Override
boolean testConnectionFailure() {
false
}
@Override
boolean testConnectionFailure() {
false
}
}

View File

@ -34,84 +34,84 @@ import static io.opentelemetry.auto.test.base.HttpServerTest.ServerEndpoint.REDI
import static io.opentelemetry.auto.test.base.HttpServerTest.ServerEndpoint.SUCCESS
class VertxHttpServerTest extends HttpServerTest<Vertx> {
public static final String CONFIG_HTTP_SERVER_PORT = "http.server.port"
public static final String CONFIG_HTTP_SERVER_PORT = "http.server.port"
@Override
Vertx startServer(int port) {
def server = Vertx.vertx(new VertxOptions()
// Useful for debugging:
// .setBlockedThreadCheckInterval(Integer.MAX_VALUE)
.setClusterPort(port))
final CompletableFuture<Void> future = new CompletableFuture<>()
server.deployVerticle(verticle().name,
new DeploymentOptions()
.setConfig(new JsonObject().put(CONFIG_HTTP_SERVER_PORT, port))
.setInstances(3)) { res ->
if (!res.succeeded()) {
throw new RuntimeException("Cannot deploy server Verticle", res.cause())
}
future.complete(null)
}
future.get()
return server
}
protected Class<io.vertx.reactivex.core.AbstractVerticle> verticle() {
return VertxWebTestServer
}
@Override
void stopServer(Vertx server) {
server.close()
}
@Override
String component() {
return NettyHttpServerDecorator.DECORATE.getComponentName()
}
@Override
boolean testExceptionBody() {
false
}
static class VertxWebTestServer extends AbstractVerticle {
@Override
Vertx startServer(int port) {
def server = Vertx.vertx(new VertxOptions()
// Useful for debugging:
// .setBlockedThreadCheckInterval(Integer.MAX_VALUE)
.setClusterPort(port))
final CompletableFuture<Void> future = new CompletableFuture<>()
server.deployVerticle(verticle().name,
new DeploymentOptions()
.setConfig(new JsonObject().put(CONFIG_HTTP_SERVER_PORT, port))
.setInstances(3)) { res ->
if (!res.succeeded()) {
throw new RuntimeException("Cannot deploy server Verticle", res.cause())
}
future.complete(null)
void start(final Future<Void> startFuture) {
final int port = config().getInteger(CONFIG_HTTP_SERVER_PORT)
final Router router = Router.router(vertx)
router.route(SUCCESS.path).handler { ctx ->
controller(SUCCESS) {
ctx.response().setStatusCode(SUCCESS.status).end(SUCCESS.body)
}
future.get()
return server
}
protected Class<io.vertx.reactivex.core.AbstractVerticle> verticle() {
return VertxWebTestServer
}
@Override
void stopServer(Vertx server) {
server.close()
}
@Override
String component() {
return NettyHttpServerDecorator.DECORATE.getComponentName()
}
@Override
boolean testExceptionBody() {
false
}
static class VertxWebTestServer extends AbstractVerticle {
@Override
void start(final Future<Void> startFuture) {
final int port = config().getInteger(CONFIG_HTTP_SERVER_PORT)
final Router router = Router.router(vertx)
router.route(SUCCESS.path).handler { ctx ->
controller(SUCCESS) {
ctx.response().setStatusCode(SUCCESS.status).end(SUCCESS.body)
}
}
router.route(QUERY_PARAM.path).handler { ctx ->
controller(QUERY_PARAM) {
ctx.response().setStatusCode(QUERY_PARAM.status).end(ctx.request().query())
}
}
router.route(REDIRECT.path).handler { ctx ->
controller(REDIRECT) {
ctx.response().setStatusCode(REDIRECT.status).putHeader("location", REDIRECT.body).end()
}
}
router.route(ERROR.path).handler { ctx ->
controller(ERROR) {
ctx.response().setStatusCode(ERROR.status).end(ERROR.body)
}
}
router.route(EXCEPTION.path).handler { ctx ->
controller(EXCEPTION) {
throw new Exception(EXCEPTION.body)
}
}
vertx.createHttpServer()
.requestHandler { router.accept(it) }
.listen(port) { startFuture.complete() }
}
router.route(QUERY_PARAM.path).handler { ctx ->
controller(QUERY_PARAM) {
ctx.response().setStatusCode(QUERY_PARAM.status).end(ctx.request().query())
}
}
router.route(REDIRECT.path).handler { ctx ->
controller(REDIRECT) {
ctx.response().setStatusCode(REDIRECT.status).putHeader("location", REDIRECT.body).end()
}
}
router.route(ERROR.path).handler { ctx ->
controller(ERROR) {
ctx.response().setStatusCode(ERROR.status).end(ERROR.body)
}
}
router.route(EXCEPTION.path).handler { ctx ->
controller(EXCEPTION) {
throw new Exception(EXCEPTION.body)
}
}
vertx.createHttpServer()
.requestHandler { router.accept(it) }
.listen(port) { startFuture.complete() }
}
}
}