Remove jaeger-thrift from agent distribution (#2073)
* Remove jaeger-thrift from agent distribution * Update test
This commit is contained in:
parent
7c3b183294
commit
97b8712e3b
10
README.md
10
README.md
|
@ -121,16 +121,6 @@ A simple wrapper for the Jaeger exporter of opentelemetry-java. This exporter us
|
|||
| otel.exporter.jaeger.endpoint | OTEL_EXPORTER_JAEGER_ENDPOINT | The Jaeger gRPC endpoint to connect to. Default is `localhost:14250`. |
|
||||
| otel.exporter.jaeger.service.name | OTEL_EXPORTER_JAEGER_SERVICE_NAME | The service name of this JVM instance. Default is `unknown`. |
|
||||
|
||||
##### Jaeger Thrift over HTTP exporter
|
||||
|
||||
A simple wrapper for the Jaeger exporter, but using Thrift encoded payloads over HTTP.
|
||||
|
||||
| System property | Environment variable | Description |
|
||||
|-----------------------------------|-----------------------------------|----------------------------------------------------------------------------------------------------|
|
||||
| otel.exporter=jaeger-thrift | OTEL_EXPORTER=jaeger-thrift | Select the Jaeger HTTP Thrift exporter |
|
||||
| otel.exporter.jaeger.endpoint | OTEL_EXPORTER_JAEGER_ENDPOINT | The Jaeger HTTP endpoint to send thrift data to. Default is `http://localhost:14268/api/traces`. |
|
||||
| otel.exporter.jaeger.service.name | OTEL_EXPORTER_JAEGER_SERVICE_NAME | The service name of this JVM instance. Default is `unknown`. |
|
||||
|
||||
##### Zipkin exporter
|
||||
A simple wrapper for the Zipkin exporter of opentelemetry-java. It sends JSON in [Zipkin format](https://zipkin.io/zipkin-api/#/default/post_spans) to a specified HTTP URL.
|
||||
|
||||
|
|
|
@ -43,7 +43,6 @@ ext {
|
|||
opentelemetrySdk : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk', version: versions.opentelemetry),
|
||||
opentelemetrySdkMetrics : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk-metrics', version: versions.opentelemetryAlpha),
|
||||
opentelemetryJaeger : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-jaeger', version: versions.opentelemetry),
|
||||
opentelemetryJaegerThrift : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-jaeger-thrift', version: versions.opentelemetry),
|
||||
opentelemetryOtlp : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-otlp', version: versions.opentelemetry),
|
||||
opentelemetryOtlpMetrics : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-otlp-metrics', version: versions.opentelemetryAlpha),
|
||||
opentelemetryZipkin : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-zipkin', version: versions.opentelemetry),
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
plugins {
|
||||
id "com.github.johnrengelman.shadow"
|
||||
}
|
||||
|
||||
apply from: "$rootDir/gradle/java.gradle"
|
||||
apply from: "$rootDir/gradle/publish.gradle"
|
||||
|
||||
archivesBaseName = 'javaagent-exporter-jaeger-thrift'
|
||||
|
||||
dependencies {
|
||||
compileOnly(project(":javaagent-spi"))
|
||||
compileOnly deps.opentelemetrySdk
|
||||
|
||||
annotationProcessor deps.autoservice
|
||||
compileOnly deps.autoservice
|
||||
|
||||
implementation(deps.opentelemetryJaegerThrift) {
|
||||
exclude group: 'io.opentelemetry', module: 'opentelemetry-sdk'
|
||||
exclude group: 'io.opentelemetry', module: 'opentelemetry-api'
|
||||
}
|
||||
}
|
||||
|
||||
jar.enabled = false
|
||||
shadowJar {
|
||||
archiveClassifier = ''
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
/*
|
||||
* Copyright The OpenTelemetry Authors
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package io.opentelemetry.javaagent.exporters.jaeger;
|
||||
|
||||
import com.google.auto.service.AutoService;
|
||||
import io.opentelemetry.exporter.jaeger.thrift.JaegerThriftSpanExporter;
|
||||
import io.opentelemetry.javaagent.spi.exporter.SpanExporterFactory;
|
||||
import io.opentelemetry.sdk.trace.export.SpanExporter;
|
||||
import java.util.Collections;
|
||||
import java.util.Properties;
|
||||
import java.util.Set;
|
||||
|
||||
@AutoService(SpanExporterFactory.class)
|
||||
public class JaegerThriftExporterFactory implements SpanExporterFactory {
|
||||
|
||||
@Override
|
||||
public SpanExporter fromConfig(Properties config) {
|
||||
return JaegerThriftSpanExporter.builder().readProperties(config).build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<String> getNames() {
|
||||
return Collections.singleton("jaeger-thrift");
|
||||
}
|
||||
}
|
|
@ -14,7 +14,6 @@ dependencies {
|
|||
|
||||
testImplementation project(':javaagent-exporters:otlp')
|
||||
testImplementation project(':javaagent-exporters:jaeger')
|
||||
testImplementation project(':javaagent-exporters:jaeger-thrift')
|
||||
testImplementation project(':javaagent-exporters:logging')
|
||||
testImplementation project(':javaagent-exporters:zipkin')
|
||||
testImplementation project(':javaagent-exporters:prometheus')
|
||||
|
@ -23,7 +22,6 @@ dependencies {
|
|||
tasks.withType(Test).configureEach() {
|
||||
dependsOn ':javaagent-exporters:otlp:shadowJar'
|
||||
dependsOn ':javaagent-exporters:jaeger:shadowJar'
|
||||
dependsOn ':javaagent-exporters:jaeger-thrift:shadowJar'
|
||||
dependsOn ':javaagent-exporters:logging:shadowJar'
|
||||
dependsOn ':javaagent-exporters:zipkin:shadowJar'
|
||||
dependsOn ':javaagent-exporters:prometheus:shadowJar'
|
||||
|
@ -32,7 +30,6 @@ tasks.withType(Test).configureEach() {
|
|||
systemProperty 'adapterRoot', "$rootDir/javaagent-exporters"
|
||||
systemProperty 'otlpExporterJar', project(':javaagent-exporters:otlp').tasks.shadowJar.archivePath
|
||||
systemProperty 'jaegerExporterJar', project(':javaagent-exporters:jaeger').tasks.shadowJar.archivePath
|
||||
systemProperty 'jaegerThriftExporterJar', project(':javaagent-exporters:jaeger-thrift').tasks.shadowJar.archivePath
|
||||
systemProperty 'loggingExporterJar', project(':javaagent-exporters:logging').tasks.shadowJar.archivePath
|
||||
systemProperty 'zipkinExporterJar', project(':javaagent-exporters:zipkin').tasks.shadowJar.archivePath
|
||||
systemProperty 'prometheusExporterJar', project(':javaagent-exporters:prometheus').tasks.shadowJar.archivePath
|
||||
|
@ -47,7 +44,6 @@ dependencies {
|
|||
shadowInclude project(path: ':javaagent-exporters:logging', configuration: 'shadow')
|
||||
shadowInclude project(path: ':javaagent-exporters:otlp', configuration: 'shadow')
|
||||
shadowInclude project(path: ':javaagent-exporters:jaeger', configuration: 'shadow')
|
||||
shadowInclude project(path: ':javaagent-exporters:jaeger-thrift', configuration: 'shadow')
|
||||
shadowInclude project(path: ':javaagent-exporters:zipkin', configuration: 'shadow')
|
||||
shadowInclude project(path: ':javaagent-exporters:prometheus', configuration: 'shadow')
|
||||
}
|
||||
|
|
|
@ -16,9 +16,6 @@ class ExporterAdaptersTest extends Specification {
|
|||
@Shared
|
||||
def jaegerExporterJar = System.getProperty("jaegerExporterJar")
|
||||
|
||||
@Shared
|
||||
def jaegerThriftExporterJar = System.getProperty("jaegerThriftExporterJar")
|
||||
|
||||
@Shared
|
||||
def loggingExporterJar = System.getProperty("loggingExporterJar")
|
||||
|
||||
|
@ -33,7 +30,7 @@ class ExporterAdaptersTest extends Specification {
|
|||
file != null
|
||||
|
||||
where:
|
||||
exporter << [otlpExporterJar, jaegerExporterJar, jaegerThriftExporterJar, loggingExporterJar, zipkinExporterJar]
|
||||
exporter << [otlpExporterJar, jaegerExporterJar, loggingExporterJar, zipkinExporterJar]
|
||||
}
|
||||
|
||||
def "test exporter load"() {
|
||||
|
@ -57,7 +54,6 @@ class ExporterAdaptersTest extends Specification {
|
|||
exporter | classname
|
||||
otlpExporterJar | 'io.opentelemetry.javaagent.exporters.otlp.OtlpSpanExporterFactory'
|
||||
jaegerExporterJar | 'io.opentelemetry.javaagent.exporters.jaeger.JaegerExporterFactory'
|
||||
jaegerThriftExporterJar | 'io.opentelemetry.javaagent.exporters.jaeger.JaegerThriftExporterFactory'
|
||||
loggingExporterJar | 'io.opentelemetry.javaagent.exporters.logging.LoggingExporterFactory'
|
||||
zipkinExporterJar | 'io.opentelemetry.javaagent.exporters.zipkin.ZipkinExporterFactory'
|
||||
}
|
||||
|
|
|
@ -214,7 +214,6 @@ include ':instrumentation-core:servlet-2.2'
|
|||
// exporter adapters
|
||||
include ":javaagent-exporters"
|
||||
include ":javaagent-exporters:jaeger"
|
||||
include ":javaagent-exporters:jaeger-thrift"
|
||||
include ":javaagent-exporters:logging"
|
||||
include ":javaagent-exporters:otlp"
|
||||
include ":javaagent-exporters:zipkin"
|
||||
|
|
|
@ -1,58 +0,0 @@
|
|||
/*
|
||||
* Copyright The OpenTelemetry Authors
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package io.opentelemetry.smoketest
|
||||
|
||||
import io.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest
|
||||
import okhttp3.Request
|
||||
|
||||
import java.util.jar.Attributes
|
||||
import java.util.jar.JarFile
|
||||
|
||||
import static java.util.stream.Collectors.toSet
|
||||
|
||||
class JaegerThriftExporterSmokeTest extends SmokeTest {
|
||||
|
||||
protected String getTargetImage(String jdk, String serverVersion) {
|
||||
"ghcr.io/open-telemetry/java-test-containers:smoke-springboot-jdk$jdk-20210114.484678777"
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Map<String, String> getExtraEnv() {
|
||||
return [
|
||||
"OTEL_EXPORTER" : "jaeger-thrift",
|
||||
"OTEL_EXPORTER_JAEGER_ENDPOINT": "http://collector:14268/api/traces"
|
||||
]
|
||||
}
|
||||
|
||||
def "spring boot smoke test with jaeger thrift"() {
|
||||
setup:
|
||||
startTarget(11)
|
||||
|
||||
String url = "http://localhost:${target.getMappedPort(8080)}/greeting"
|
||||
def request = new Request.Builder().url(url).get().build()
|
||||
|
||||
def currentAgentVersion = new JarFile(agentPath).getManifest().getMainAttributes().get(Attributes.Name.IMPLEMENTATION_VERSION)
|
||||
|
||||
when:
|
||||
def response = CLIENT.newCall(request).execute()
|
||||
Collection<ExportTraceServiceRequest> traces = waitForTraces()
|
||||
|
||||
then:
|
||||
response.body().string() == "Hi!"
|
||||
countSpansByName(traces, '/greeting') == 1
|
||||
countSpansByName(traces, 'WebController.greeting') == 1
|
||||
countSpansByName(traces, 'WebController.withSpan') == 1
|
||||
|
||||
[currentAgentVersion] as Set == findResourceAttribute(traces, "telemetry.auto.version")
|
||||
.map { it.stringValue }
|
||||
.collect(toSet())
|
||||
|
||||
cleanup:
|
||||
stopTarget()
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -12,8 +12,6 @@ receivers:
|
|||
zipkin:
|
||||
jaeger:
|
||||
protocols:
|
||||
thrift_http:
|
||||
endpoint: 0.0.0.0:14268
|
||||
grpc:
|
||||
|
||||
processors:
|
||||
|
|
Loading…
Reference in New Issue