Polish "Add service connection from OpenTelemetry Collector"

See gh-35082
This commit is contained in:
Moritz Halbritter
2023-09-14 09:58:19 +02:00
parent 6997277f75
commit c387c87fda
21 changed files with 229 additions and 118 deletions

View File

@@ -16,40 +16,40 @@
package org.springframework.boot.docker.compose.service.connection.otlp;
import org.springframework.boot.actuate.autoconfigure.metrics.export.otlp.OtlpConnectionDetails;
import org.springframework.boot.actuate.autoconfigure.metrics.export.otlp.OtlpMetricsConnectionDetails;
import org.springframework.boot.docker.compose.core.RunningService;
import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionDetailsFactory;
import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionSource;
/**
* {@link DockerComposeConnectionDetailsFactory} to create {@link OtlpConnectionDetails}
* for a {@code otlp} service.
* {@link DockerComposeConnectionDetailsFactory} to create
* {@link OtlpMetricsConnectionDetails} for a {@code OTLP} service.
*
* @author Eddú Meléndez
*/
class OpenTelemetryDockerComposeConnectionDetailsFactory
extends DockerComposeConnectionDetailsFactory<OtlpConnectionDetails> {
class OpenTelemetryMetricsDockerComposeConnectionDetailsFactory
extends DockerComposeConnectionDetailsFactory<OtlpMetricsConnectionDetails> {
private static final int OTLP_PORT = 4318;
OpenTelemetryDockerComposeConnectionDetailsFactory() {
OpenTelemetryMetricsDockerComposeConnectionDetailsFactory() {
super("otel/opentelemetry-collector-contrib",
"org.springframework.boot.actuate.autoconfigure.metrics.export.otlp.OtlpMetricsExportAutoConfiguration");
}
@Override
protected OtlpConnectionDetails getDockerComposeConnectionDetails(DockerComposeConnectionSource source) {
return new OpenTelemetryContainerConnectionDetails(source.getRunningService());
protected OtlpMetricsConnectionDetails getDockerComposeConnectionDetails(DockerComposeConnectionSource source) {
return new OpenTelemetryContainerMetricsConnectionDetails(source.getRunningService());
}
private static final class OpenTelemetryContainerConnectionDetails extends DockerComposeConnectionDetails
implements OtlpConnectionDetails {
private static final class OpenTelemetryContainerMetricsConnectionDetails extends DockerComposeConnectionDetails
implements OtlpMetricsConnectionDetails {
private final String host;
private final int port;
private OpenTelemetryContainerConnectionDetails(RunningService source) {
private OpenTelemetryContainerMetricsConnectionDetails(RunningService source) {
super(source);
this.host = source.host();
this.port = source.ports().get(OTLP_PORT);
@@ -57,7 +57,7 @@ class OpenTelemetryDockerComposeConnectionDetailsFactory
@Override
public String getUrl() {
return "http://" + this.host + ":" + this.port + "/v1/metrics";
return "http://%s:%d/v1/metrics".formatted(this.host, this.port);
}
}

View File

@@ -23,7 +23,7 @@ import org.springframework.boot.docker.compose.service.connection.DockerComposeC
/**
* {@link DockerComposeConnectionDetailsFactory} to create
* {@link OtlpTracingConnectionDetails} for a {@code otlp} service.
* {@link OtlpTracingConnectionDetails} for a {@code OTLP} service.
*
* @author Eddú Meléndez
*/
@@ -57,7 +57,7 @@ class OpenTelemetryTracingDockerComposeConnectionDetailsFactory
@Override
public String getEndpoint() {
return "http://" + this.host + ":" + this.port + "/v1/traces";
return "http://%s:%d/v1/traces".formatted(this.host, this.port);
}
}

View File

@@ -17,7 +17,7 @@ org.springframework.boot.docker.compose.service.connection.mysql.MySqlJdbcDocker
org.springframework.boot.docker.compose.service.connection.mysql.MySqlR2dbcDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.oracle.OracleJdbcDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.oracle.OracleR2dbcDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.otlp.OpenTelemetryDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.otlp.OpenTelemetryMetricsDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.otlp.OpenTelemetryTracingDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.postgres.PostgresJdbcDockerComposeConnectionDetailsFactory,\
org.springframework.boot.docker.compose.service.connection.postgres.PostgresR2dbcDockerComposeConnectionDetailsFactory,\