Remove the remaining deprecated code from the project. (#2612)

This commit is contained in:
John Watson 2021-01-29 19:26:42 -08:00 committed by GitHub
parent 1201377a65
commit d16e51f798
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 5 additions and 2400 deletions

View File

@ -34,7 +34,6 @@ public final class OtlpGrpcMetricExporterBuilder {
private ManagedChannel channel;
private long timeoutNanos = TimeUnit.SECONDS.toNanos(DEFAULT_TIMEOUT_SECS);
private URI endpoint = DEFAULT_ENDPOINT;
private boolean useTls = false;
@Nullable private Metadata metadata;
@ -98,20 +97,6 @@ public final class OtlpGrpcMetricExporterBuilder {
return this;
}
/**
* Sets use or not TLS, default is false. Optional. Applicable only if {@link
* OtlpGrpcMetricExporterBuilder#endpoint} is set to build channel.
*
* @param useTls use TLS or not
* @return this builder's instance
* @deprecated Pass a URL starting with https:// to {@link #setEndpoint(String)}
*/
@Deprecated
public OtlpGrpcMetricExporterBuilder setUseTls(boolean useTls) {
this.useTls = useTls;
return this;
}
/**
* Add header to request. Optional. Applicable only if {@link
* OtlpGrpcMetricExporterBuilder#endpoint} is set to build channel.
@ -138,7 +123,7 @@ public final class OtlpGrpcMetricExporterBuilder {
final ManagedChannelBuilder<?> managedChannelBuilder =
ManagedChannelBuilder.forTarget(endpoint.getAuthority());
if (endpoint.getScheme().equals("https") || useTls) {
if (endpoint.getScheme().equals("https")) {
managedChannelBuilder.useTransportSecurity();
} else {
managedChannelBuilder.usePlaintext();

View File

@ -38,7 +38,6 @@ public final class OtlpGrpcSpanExporterBuilder {
private ManagedChannel channel;
private long timeoutNanos = TimeUnit.SECONDS.toNanos(DEFAULT_TIMEOUT_SECS);
private URI endpoint = DEFAULT_ENDPOINT;
private boolean useTls = false;
@Nullable private Metadata metadata;
@Nullable private byte[] trustedCertificatesPem;
@ -106,20 +105,6 @@ public final class OtlpGrpcSpanExporterBuilder {
return this;
}
/**
* Sets use or not TLS, default is false. Optional. Applicable only if {@link
* OtlpGrpcSpanExporterBuilder#endpoint} is set to build channel.
*
* @param useTls use TLS or not
* @return this builder's instance
* @deprecated Pass a URL starting with https:// to {@link #setEndpoint(String)}
*/
@Deprecated
public OtlpGrpcSpanExporterBuilder setUseTls(boolean useTls) {
this.useTls = useTls;
return this;
}
/**
* Sets the certificate chain to use for verifying servers when TLS is enabled. The {@code byte[]}
* should contain an X.509 certificate collection in PEM format. If not set, TLS connections will
@ -156,7 +141,7 @@ public final class OtlpGrpcSpanExporterBuilder {
final ManagedChannelBuilder<?> managedChannelBuilder =
ManagedChannelBuilder.forTarget(endpoint.getAuthority());
if (endpoint.getScheme().equals("https") || useTls) {
if (endpoint.getScheme().equals("https")) {
managedChannelBuilder.useTransportSecurity();
} else {
managedChannelBuilder.usePlaintext();

View File

@ -5,7 +5,6 @@
package io.opentelemetry.sdk;
import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.api.OpenTelemetry;
import io.opentelemetry.api.trace.Tracer;
import io.opentelemetry.api.trace.TracerProvider;
@ -15,7 +14,6 @@ import javax.annotation.concurrent.ThreadSafe;
/** The SDK implementation of {@link OpenTelemetry}. */
@ThreadSafe
@SuppressWarnings("deprecation") // Remove when SdkTracerManagement is removed
public final class OpenTelemetrySdk implements OpenTelemetry {
private final ObfuscatedTracerProvider tracerProvider;
private final ContextPropagators propagators;
@ -33,32 +31,6 @@ public final class OpenTelemetrySdk implements OpenTelemetry {
return new OpenTelemetrySdkBuilder();
}
/**
* Returns the global {@link OpenTelemetrySdk}.
*
* @deprecated Will be removed without replacement
*/
@Deprecated
public static OpenTelemetrySdk get() {
return (OpenTelemetrySdk) GlobalOpenTelemetry.get();
}
/**
* Returns the global {@link io.opentelemetry.sdk.trace.SdkTracerManagement}.
*
* @deprecated Will be removed without replacement
*/
@Deprecated
public static io.opentelemetry.sdk.trace.SdkTracerManagement getGlobalTracerManagement() {
TracerProvider tracerProvider = GlobalOpenTelemetry.get().getTracerProvider();
if (!(tracerProvider instanceof ObfuscatedTracerProvider)) {
throw new IllegalStateException(
"Trying to access global SdkTracerManagement but global TracerProvider is not an "
+ "instance created by this SDK.");
}
return ((ObfuscatedTracerProvider) tracerProvider).unobfuscate();
}
@Override
public TracerProvider getTracerProvider() {
return tracerProvider;
@ -74,17 +46,6 @@ public final class OpenTelemetrySdk implements OpenTelemetry {
return propagators;
}
/**
* Returns the {@link io.opentelemetry.sdk.trace.SdkTracerManagement} for this {@link
* OpenTelemetrySdk}.
*
* @deprecated Use {@link #getSdkTracerProvider()}
*/
@Deprecated
public io.opentelemetry.sdk.trace.SdkTracerManagement getTracerManagement() {
return tracerProvider.unobfuscate();
}
/**
* This class allows the SDK to unobfuscate an obfuscated static global provider.
*

View File

@ -1,156 +0,0 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.sdk.resources;
import static io.opentelemetry.api.common.AttributeKey.longKey;
import static io.opentelemetry.api.common.AttributeKey.stringKey;
import io.opentelemetry.api.common.AttributeKey;
/**
* Provides constants for resource semantic conventions defined by the OpenTelemetry specification.
*
* @deprecated Please use the generated class in the `opentelemetry-semconv` module.
* @see <a
* href="https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/resource/semantic_conventions/README.md">Resource
* Conventions</a>
*/
@Deprecated
public final class ResourceAttributes {
/** The operating system type, such as {@code "WINDOWS"}, {@code "DARWIN"}, {@code "LINUX"}. */
public static final AttributeKey<String> OS_NAME = stringKey("os.name");
/**
* Human readable information about the OS version, e.g. {@code "Microsoft Windows [Version
* 10.0.18363.778]"}, {@code "Ubuntu 18.04.1 LTS"}.
*/
public static final AttributeKey<String> OS_DESCRIPTION = stringKey("os.description");
/** Process identifier (PID). */
public static final AttributeKey<Long> PROCESS_PID = longKey("process.pid");
/** The name of the process executable. */
public static final AttributeKey<String> PROCESS_EXECUTABLE_NAME =
stringKey("process.executable.name");
/** The full path to the process executable. */
public static final AttributeKey<String> PROCESS_EXECUTABLE_PATH =
stringKey("process.executable.path");
/** The command used to launch the process (i.e. the command name). */
public static final AttributeKey<String> PROCESS_COMMAND = stringKey("process.command");
/**
* The full command used to launch the process. The value can be either a list of strings
* representing the ordered list of arguments, or a single string representing the full command.
*/
public static final AttributeKey<String> PROCESS_COMMAND_LINE = stringKey("process.command_line");
/** The username of the user that owns the process. */
public static final AttributeKey<String> PROCESS_OWNER = stringKey("process.owner");
// TODO: these should be removed once SemanticAttributes contain process.runtime.*
/**
* The name of the runtime of this process. For compiled native binaries, this SHOULD be the name
* of the compiler.
*/
public static final AttributeKey<String> PROCESS_RUNTIME_NAME = stringKey("process.runtime.name");
/**
* The version of the runtime of this process, as returned by the runtime without modification.
*/
public static final AttributeKey<String> PROCESS_RUNTIME_VERSION =
stringKey("process.runtime.version");
/**
* An additional description about the runtime of the process, for example a specific vendor
* customization of the runtime environment.
*/
public static final AttributeKey<String> PROCESS_RUNTIME_DESCRIPTION =
stringKey("process.runtime.description");
/**
* Logical name of the service. MUST be the same for all instances of horizontally scaled
* services.
*/
public static final AttributeKey<String> SERVICE_NAME = stringKey("service.name");
/**
* A namespace for `service.name`. A string value having a meaning that helps to distinguish a
* group of services,
*/
public static final AttributeKey<String> SERVICE_NAMESPACE = stringKey("service.namespace");
/**
* The string ID of the service instance. MUST be unique for each instance of the same
* `service.namespace,service.name` pair.
*/
public static final AttributeKey<String> SERVICE_INSTANCE = stringKey("service.instance.id");
/** The version string of the service API or implementation. */
public static final AttributeKey<String> SERVICE_VERSION = stringKey("service.version");
/** The name of the telemetry library. */
public static final AttributeKey<String> LIBRARY_NAME = stringKey("library.name");
/** The language of telemetry library and of the code instrumented with it. */
public static final AttributeKey<String> LIBRARY_LANGUAGE = stringKey("library.language");
/** The version string of the library. */
public static final AttributeKey<String> LIBRARY_VERSION = stringKey("library.version");
/** Container name. */
public static final AttributeKey<String> CONTAINER_NAME = stringKey("container.name");
/** Container id. */
public static final AttributeKey<String> CONTAINER_ID = stringKey("container.id");
/** Name of the image the container was built on. */
public static final AttributeKey<String> CONTAINER_IMAGE_NAME = stringKey("container.image.name");
/** Container image tag. */
public static final AttributeKey<String> CONTAINER_IMAGE_TAG = stringKey("container.image.tag");
/** The name of the cluster that the pod is running in. */
public static final AttributeKey<String> K8S_CLUSTER = stringKey("k8s.cluster.name");
/** The name of the namespace that the pod is running in. */
public static final AttributeKey<String> K8S_NAMESPACE = stringKey("k8s.namespace.name");
/** The name of the pod. */
public static final AttributeKey<String> K8S_POD = stringKey("k8s.pod.name");
/** The name of the deployment. */
public static final AttributeKey<String> K8S_DEPLOYMENT = stringKey("k8s.deployment.name");
/** Hostname of the host. It contains what the `hostname` command returns on the host machine. */
public static final AttributeKey<String> HOST_HOSTNAME = stringKey("host.hostname");
/** Unique host id. For Cloud this must be the instance_id assigned by the cloud provider. */
public static final AttributeKey<String> HOST_ID = stringKey("host.id");
/**
* Name of the host. It may contain what `hostname` returns on Unix systems, the fully qualified,
* or a name specified by the user.
*/
public static final AttributeKey<String> HOST_NAME = stringKey("host.name");
/** Type of host. For Cloud this must be the machine type. */
public static final AttributeKey<String> HOST_TYPE = stringKey("host.type");
/** Name of the VM image or OS install the host was instantiated from. */
public static final AttributeKey<String> HOST_IMAGE_NAME = stringKey("host.image.name");
/** VM image id. For Cloud, this value is from the provider. */
public static final AttributeKey<String> HOST_IMAGE_ID = stringKey("host.image.id");
/** The version string of the VM image. */
public static final AttributeKey<String> HOST_IMAGE_VERSION = stringKey("host.image.version");
/** Name of the cloud provider. */
public static final AttributeKey<String> CLOUD_PROVIDER = stringKey("cloud.provider");
/** The cloud account id used to identify different entities. */
public static final AttributeKey<String> CLOUD_ACCOUNT = stringKey("cloud.account.id");
/** A specific geographical location where different entities can run. */
public static final AttributeKey<String> CLOUD_REGION = stringKey("cloud.region");
/** Zones are a sub set of the region connected through low-latency links. */
public static final AttributeKey<String> CLOUD_ZONE = stringKey("cloud.zone");
/** The name of the function being executed. */
public static final AttributeKey<String> FAAS_NAME = stringKey("faas.name");
/** The unique ID of the function being executed. */
public static final AttributeKey<String> FAAS_ID = stringKey("faas.id");
/** The version string of the function being executed. */
public static final AttributeKey<String> FAAS_VERSION = stringKey("faas.version");
/** The execution environment ID as a string. */
public static final AttributeKey<String> FAAS_INSTANCE = stringKey("faas.instance");
/** The name of the telemetry SDK as defined above. */
public static final AttributeKey<String> SDK_NAME = stringKey("telemetry.sdk.name");
/** The language of the telemetry SDK. */
public static final AttributeKey<String> SDK_LANGUAGE = stringKey("telemetry.sdk.language");
/** The version string of the telemetry SDK. */
public static final AttributeKey<String> SDK_VERSION = stringKey("telemetry.sdk.version");
private ResourceAttributes() {}
}

View File

@ -77,16 +77,6 @@ public final class OpenTelemetryRule extends ExternalResource {
return openTelemetry;
}
/**
* Returns the {@link io.opentelemetry.sdk.trace.SdkTracerManagement} created by this extension.
*
* @deprecated Will be removed without replacement
*/
@Deprecated
public io.opentelemetry.sdk.trace.SdkTracerManagement getTracerManagement() {
return openTelemetry.getSdkTracerProvider();
}
/** Returns all the exported {@link SpanData} so far. */
public List<SpanData> getSpans() {
return spanExporter.getFinishedSpanItems();

View File

@ -84,16 +84,6 @@ public final class OpenTelemetryExtension
return openTelemetry;
}
/**
* Returns the {@link io.opentelemetry.sdk.trace.SdkTracerManagement} created by this extension.
*
* @deprecated Will be removed without replacement
*/
@Deprecated
public io.opentelemetry.sdk.trace.SdkTracerManagement getTracerManagement() {
return openTelemetry.getSdkTracerProvider();
}
/** Returns all the exported {@link SpanData} so far. */
public List<SpanData> getSpans() {
return spanExporter.getFinishedSpanItems();

View File

@ -1,73 +0,0 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.sdk.trace;
import io.opentelemetry.api.trace.Tracer;
import io.opentelemetry.sdk.common.CompletableResultCode;
import io.opentelemetry.sdk.trace.config.TraceConfig;
import java.io.Closeable;
import java.util.concurrent.TimeUnit;
/**
* "Management" interface for the Tracing SDK. This interface exposes methods for configuring the
* Tracing SDK, as well as several lifecycle methods.
*
* @deprecated Use {@link SdkTracerProvider} directly.
*/
@Deprecated
public interface SdkTracerManagement extends Closeable {
/**
* Returns the active {@code TraceConfig}.
*
* @return the active {@code TraceConfig}.
*/
TraceConfig getActiveTraceConfig();
/**
* Attempts to stop all the activity for this {@link Tracer}. Calls {@link
* SpanProcessor#shutdown()} for all registered {@link SpanProcessor}s.
*
* <p>This operation may block until all the Spans are processed. Must be called before turning
* off the main application to ensure all data are processed and exported.
*
* <p>After this is called, newly created {@code Span}s will be no-ops.
*
* <p>After this is called, further attempts at re-using or reconfiguring this instance will
* result in undefined behavior. It should be considered a terminal operation for the SDK
* implementation.
*
* @return a {@link CompletableResultCode} which is completed when all the span processors have
* been shut down.
*/
CompletableResultCode shutdown();
/**
* Requests the active span processor to process all span events that have not yet been processed
* and returns a {@link CompletableResultCode} which is completed when the flush is finished.
*
* @see SpanProcessor#forceFlush()
*/
CompletableResultCode forceFlush();
/**
* Attempts to stop all the activity for this {@link Tracer}. Calls {@link
* SpanProcessor#shutdown()} for all registered {@link SpanProcessor}s.
*
* <p>This operation may block until all the Spans are processed. Must be called before turning
* off the main application to ensure all data are processed and exported.
*
* <p>After this is called, newly created {@code Span}s will be no-ops.
*
* <p>After this is called, further attempts at re-using or reconfiguring this instance will
* result in undefined behavior. It should be considered a terminal operation for the SDK
* implementation.
*/
@Override
default void close() {
shutdown().join(10, TimeUnit.SECONDS);
}
}

View File

@ -29,8 +29,7 @@ import javax.annotation.Nullable;
* OpenTelemetry}. However, if you need a custom implementation of the factory, you can create one
* as needed.
*/
@SuppressWarnings("deprecation") // Remove when SdkTracerManagement is removed
public final class SdkTracerProvider implements TracerProvider, SdkTracerManagement, Closeable {
public final class SdkTracerProvider implements TracerProvider, Closeable {
private static final Logger logger = Logger.getLogger(SdkTracerProvider.class.getName());
static final String DEFAULT_TRACER_NAME = "unknown";
private final TracerSharedState sharedState;
@ -76,7 +75,6 @@ public final class SdkTracerProvider implements TracerProvider, SdkTracerManagem
}
/** Returns the active {@link TraceConfig}. */
@Override
public TraceConfig getActiveTraceConfig() {
return sharedState.getActiveTraceConfig();
}
@ -102,7 +100,6 @@ public final class SdkTracerProvider implements TracerProvider, SdkTracerManagem
* @return a {@link CompletableResultCode} which is completed when all the span processors have
* been shut down.
*/
@Override
public CompletableResultCode shutdown() {
if (sharedState.isStopped()) {
logger.log(Level.WARNING, "Calling shutdown() multiple times.");
@ -117,7 +114,6 @@ public final class SdkTracerProvider implements TracerProvider, SdkTracerManagem
*
* @see SpanProcessor#forceFlush()
*/
@Override
public CompletableResultCode forceFlush() {
return sharedState.getActiveSpanProcessor().forceFlush();
}

View File

@ -46,7 +46,6 @@ public final class BatchSpanProcessor implements SpanProcessor {
private static final String SPAN_PROCESSOR_TYPE_VALUE = BatchSpanProcessor.class.getSimpleName();
private final Worker worker;
private final boolean sampled;
private final AtomicBoolean isShutdown = new AtomicBoolean(false);
/**
@ -62,7 +61,6 @@ public final class BatchSpanProcessor implements SpanProcessor {
BatchSpanProcessor(
SpanExporter spanExporter,
boolean sampled,
long scheduleDelayNanos,
int maxQueueSize,
int maxExportBatchSize,
@ -76,7 +74,6 @@ public final class BatchSpanProcessor implements SpanProcessor {
new ArrayBlockingQueue<>(maxQueueSize));
Thread workerThread = new DaemonThreadFactory(WORKER_THREAD_NAME).newThread(worker);
workerThread.start();
this.sampled = sampled;
}
@Override
@ -89,7 +86,7 @@ public final class BatchSpanProcessor implements SpanProcessor {
@Override
public void onEnd(ReadableSpan span) {
if (sampled && !span.getSpanContext().isSampled()) {
if (!span.getSpanContext().isSampled()) {
return;
}
worker.addSpan(span);

View File

@ -22,15 +22,12 @@ public final class BatchSpanProcessorBuilder {
static final int DEFAULT_MAX_EXPORT_BATCH_SIZE = 512;
// Visible for testing
static final int DEFAULT_EXPORT_TIMEOUT_MILLIS = 30_000;
// Visible for testing
static final boolean DEFAULT_EXPORT_ONLY_SAMPLED = true;
private final SpanExporter spanExporter;
private long scheduleDelayNanos = TimeUnit.MILLISECONDS.toNanos(DEFAULT_SCHEDULE_DELAY_MILLIS);
private int maxQueueSize = DEFAULT_MAX_QUEUE_SIZE;
private int maxExportBatchSize = DEFAULT_MAX_EXPORT_BATCH_SIZE;
private long exporterTimeoutNanos = TimeUnit.MILLISECONDS.toNanos(DEFAULT_EXPORT_TIMEOUT_MILLIS);
private boolean exportOnlySampled = DEFAULT_EXPORT_ONLY_SAMPLED;
BatchSpanProcessorBuilder(SpanExporter spanExporter) {
this.spanExporter = requireNonNull(spanExporter, "spanExporter");
@ -38,30 +35,6 @@ public final class BatchSpanProcessorBuilder {
// TODO: Consider to add support for constant Attributes and/or Resource.
/**
* Set whether only sampled spans should be reported.
*
* <p>Default value is {@code true}.
*
* @param exportOnlySampled if {@code true} report only sampled spans.
* @return this.
* @see BatchSpanProcessorBuilder#DEFAULT_EXPORT_ONLY_SAMPLED
* @deprecated Will be removed without replacement, all spans with a sampling result of {@link
* io.opentelemetry.sdk.trace.samplers.SamplingDecision#RECORD_AND_SAMPLE} will be exported
* while spans with a result of {@link
* io.opentelemetry.sdk.trace.samplers.SamplingDecision#RECORD_ONLY} will not.
*/
@Deprecated
public BatchSpanProcessorBuilder setExportOnlySampled(boolean exportOnlySampled) {
this.exportOnlySampled = exportOnlySampled;
return this;
}
// Visible for testing
boolean getExportOnlySampled() {
return exportOnlySampled;
}
/**
* Sets the delay interval between two consecutive exports. If unset, defaults to {@value
* DEFAULT_SCHEDULE_DELAY_MILLIS}ms.
@ -165,11 +138,6 @@ public final class BatchSpanProcessorBuilder {
*/
public BatchSpanProcessor build() {
return new BatchSpanProcessor(
spanExporter,
exportOnlySampled,
scheduleDelayNanos,
maxQueueSize,
maxExportBatchSize,
exporterTimeoutNanos);
spanExporter, scheduleDelayNanos, maxQueueSize, maxExportBatchSize, exporterTimeoutNanos);
}
}

View File

@ -80,8 +80,6 @@ class BatchSpanProcessorTest {
assertThat(config.getExporterTimeoutNanos())
.isEqualTo(
TimeUnit.MILLISECONDS.toNanos(BatchSpanProcessorBuilder.DEFAULT_EXPORT_TIMEOUT_MILLIS));
assertThat(config.getExportOnlySampled())
.isEqualTo(BatchSpanProcessorBuilder.DEFAULT_EXPORT_ONLY_SAMPLED);
}
@Test

View File

@ -7,669 +7,14 @@ package io.opentelemetry.semconv.trace.attributes;
import static io.opentelemetry.api.common.AttributeKey.booleanKey;
import static io.opentelemetry.api.common.AttributeKey.longKey;
import static io.opentelemetry.api.common.AttributeKey.stringArrayKey;
import static io.opentelemetry.api.common.AttributeKey.stringKey;
import io.opentelemetry.api.common.AttributeKey;
import java.util.List;
// DO NOT EDIT, this is an Auto-generated file from
// buildscripts/semantic-convention/templates/SemanticAttributes.java.j2
public final class SemanticAttributes {
/**
* Name of the cloud provider.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> CLOUD_PROVIDER = stringKey("cloud.provider");
/**
* The cloud account ID used to identify different entities.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> CLOUD_ACCOUNT_ID = stringKey("cloud.account.id");
/**
* A specific geographical location where different entities can run.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> CLOUD_REGION = stringKey("cloud.region");
/**
* Zones are a sub set of the region connected through low-latency links.
*
* <p>Note: In AWS, this is called availability-zone.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> CLOUD_ZONE = stringKey("cloud.zone");
/**
* The Amazon Resource Name (ARN) of an [ECS container
* instance](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> AWS_ECS_CONTAINER_ARN =
stringKey("aws.ecs.container.arn");
/**
* The ARN of an [ECS
* cluster](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.html).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> AWS_ECS_CLUSTER_ARN = stringKey("aws.ecs.cluster.arn");
/**
* The [launch
* type](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) for an ECS
* task.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> AWS_ECS_LAUNCHTYPE = stringKey("aws.ecs.launchtype");
/**
* The ARN of an [ECS task
* definition](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> AWS_ECS_TASK_ARN = stringKey("aws.ecs.task.arn");
/**
* The task definition family this task definition is a member of.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> AWS_ECS_TASK_FAMILY = stringKey("aws.ecs.task.family");
/**
* The name(s) of the AWS log group(s) an application is writing to.
*
* <p>Note: Multiple log groups must be supported for cases like multi-container applications,
* where a single application has sidecar containers, and each write to their own log group.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<List<String>> AWS_LOG_GROUP_NAMES =
stringArrayKey("aws.log.group.names");
/**
* The Amazon Resource Name(s) (ARN) of the AWS log group(s).
*
* <p>Note: See the [log group ARN format
* documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html#CWL_ARN_Format).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<List<String>> AWS_LOG_GROUP_ARNS =
stringArrayKey("aws.log.group.arns");
/**
* The name(s) of the AWS log stream(s) an application is writing to.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<List<String>> AWS_LOG_STREAM_NAMES =
stringArrayKey("aws.log.stream.names");
/**
* The ARN(s) of the AWS log stream(s).
*
* <p>Note: See the [log stream ARN format
* documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html#CWL_ARN_Format).
* One log group can contain several log streams, so these ARNs necessarily identify both a log
* group and a log stream.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<List<String>> AWS_LOG_STREAM_ARNS =
stringArrayKey("aws.log.stream.arns");
/**
* Container name.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> CONTAINER_NAME = stringKey("container.name");
/**
* Container id. Usually a UUID, as for example used to [identify Docker
* containers](https://docs.docker.com/engine/reference/run/#container-identification). The UUID
* might be abbreviated.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> CONTAINER_ID = stringKey("container.id");
/**
* Name of the image the container was built on.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> CONTAINER_IMAGE_NAME = stringKey("container.image.name");
/**
* Container image tag.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> CONTAINER_IMAGE_TAG = stringKey("container.image.tag");
/**
* Name of the [deployment environment](https://en.wikipedia.org/wiki/Deployment_environment) (aka
* deployment tier).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> DEPLOYMENT_ENVIRONMENT =
stringKey("deployment.environment");
/**
* The name of the function being executed.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> FAAS_NAME = stringKey("faas.name");
/**
* The unique ID of the function being executed.
*
* <p>Note: For example, in AWS Lambda this field corresponds to the
* [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) value, in GCP
* to the URI of the resource, and in Azure to the
* [FunctionDirectory](https://github.com/Azure/azure-functions-host/wiki/Retrieving-information-about-the-currently-running-function)
* field.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> FAAS_ID = stringKey("faas.id");
/**
* The version string of the function being executed as defined in [Version
* Attributes](../../resource/semantic_conventions/README.md#version-attributes).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> FAAS_VERSION = stringKey("faas.version");
/**
* The execution environment ID as a string.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> FAAS_INSTANCE = stringKey("faas.instance");
/**
* The amount of memory available to the serverless function in MiB.
*
* <p>Note: It&#39;s recommended to set this attribute in since e.g. too little memory can easily
* stop a Java AWS Lambda function from working correctly. On AWS Lambda, the environment variable
* `AWS_LAMBDA_FUNCTION_MEMORY_SIZE` provides this information.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<Long> FAAS_MAX_MEMORY = longKey("faas.max_memory");
/**
* Unique host ID. For Cloud, this must be the instance_id assigned by the cloud provider.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> HOST_ID = stringKey("host.id");
/**
* Name of the host. On Unix systems, it may contain what the hostname command returns, or the
* fully qualified hostname, or another name specified by the user.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> HOST_NAME = stringKey("host.name");
/**
* Type of host. For Cloud, this must be the machine type.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> HOST_TYPE = stringKey("host.type");
/**
* Name of the VM image or OS install the host was instantiated from.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> HOST_IMAGE_NAME = stringKey("host.image.name");
/**
* VM image ID. For Cloud, this value is from the provider.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> HOST_IMAGE_ID = stringKey("host.image.id");
/**
* The version string of the VM image as defined in [Version
* Attributes](README.md#version-attributes).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> HOST_IMAGE_VERSION = stringKey("host.image.version");
/**
* The name of the cluster.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_CLUSTER_NAME = stringKey("k8s.cluster.name");
/**
* The name of the namespace that the pod is running in.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_NAMESPACE_NAME = stringKey("k8s.namespace.name");
/**
* The UID of the Pod.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> K8S_POD_UID = stringKey("k8s.pod.uid");
/**
* The name of the Pod.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> K8S_POD_NAME = stringKey("k8s.pod.name");
/**
* The name of the Container in a Pod template.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_CONTAINER_NAME = stringKey("k8s.container.name");
/**
* The UID of the ReplicaSet.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_REPLICASET_UID = stringKey("k8s.replicaset.uid");
/**
* The name of the ReplicaSet.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_REPLICASET_NAME = stringKey("k8s.replicaset.name");
/**
* The UID of the Deployment.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_DEPLOYMENT_UID = stringKey("k8s.deployment.uid");
/**
* The name of the Deployment.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_DEPLOYMENT_NAME = stringKey("k8s.deployment.name");
/**
* The UID of the StatefulSet.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_STATEFULSET_UID = stringKey("k8s.statefulset.uid");
/**
* The name of the StatefulSet.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_STATEFULSET_NAME = stringKey("k8s.statefulset.name");
/**
* The UID of the DaemonSet.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_DAEMONSET_UID = stringKey("k8s.daemonset.uid");
/**
* The name of the DaemonSet.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_DAEMONSET_NAME = stringKey("k8s.daemonset.name");
/**
* The UID of the Job.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> K8S_JOB_UID = stringKey("k8s.job.uid");
/**
* The name of the Job.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> K8S_JOB_NAME = stringKey("k8s.job.name");
/**
* The UID of the CronJob.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_CRONJOB_UID = stringKey("k8s.cronjob.uid");
/**
* The name of the CronJob.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> K8S_CRONJOB_NAME = stringKey("k8s.cronjob.name");
/**
* The operating system type.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> OS_TYPE = stringKey("os.type");
/**
* Human readable (not intended to be parsed) OS version information, like e.g. reported by `ver`
* or `lsb_release -a` commands.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> OS_DESCRIPTION = stringKey("os.description");
/**
* Process identifier (PID).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<Long> PROCESS_PID = longKey("process.pid");
/**
* The name of the process executable. On Linux based systems, can be set to the `Name` in
* `proc/[pid]/status`. On Windows, can be set to the base name of `GetProcessImageFileNameW`.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_EXECUTABLE_NAME =
stringKey("process.executable.name");
/**
* The full path to the process executable. On Linux based systems, can be set to the target of
* `proc/[pid]/exe`. On Windows, can be set to the result of `GetProcessImageFileNameW`.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_EXECUTABLE_PATH =
stringKey("process.executable.path");
/**
* The command used to launch the process (i.e. the command name). On Linux based systems, can be
* set to the zeroth string in `proc/[pid]/cmdline`. On Windows, can be set to the first parameter
* extracted from `GetCommandLineW`.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_COMMAND = stringKey("process.command");
/**
* The full command used to launch the process as a single string representing the full command.
* On Windows, can be set to the result of `GetCommandLineW`. Do not set this if you have to
* assemble it just for monitoring; use `process.command_args` instead.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_COMMAND_LINE = stringKey("process.command_line");
/**
* All the command arguments (including the command/executable itself) as received by the process.
* On Linux-based systems (and some other Unixoid systems supporting procfs), can be set according
* to the list of null-delimited strings extracted from `proc/[pid]/cmdline`. For libc-based
* executables, this would be the full argv vector passed to `main`.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<List<String>> PROCESS_COMMAND_ARGS =
stringArrayKey("process.command_args");
/**
* The username of the user that owns the process.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> PROCESS_OWNER = stringKey("process.owner");
/**
* The name of the runtime of this process. For compiled native binaries, this SHOULD be the name
* of the compiler.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_RUNTIME_NAME = stringKey("process.runtime.name");
/**
* The version of the runtime of this process, as returned by the runtime without modification.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_RUNTIME_VERSION =
stringKey("process.runtime.version");
/**
* An additional description about the runtime of the process, for example a specific vendor
* customization of the runtime environment.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> PROCESS_RUNTIME_DESCRIPTION =
stringKey("process.runtime.description");
/**
* Logical name of the service.
*
* <p>Note: MUST be the same for all instances of horizontally scaled services. If the value was
* not specified, SDKs MUST fallback to `unknown_service:` concatenated with
* [`process.executable.name`](process.md#process), e.g. `unknown_service:bash`. If
* `process.executable.name` is not available, the value MUST be set to `unknown_service`.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated public static final AttributeKey<String> SERVICE_NAME = stringKey("service.name");
/**
* A namespace for `service.name`.
*
* <p>Note: A string value having a meaning that helps to distinguish a group of services, for
* example the team name that owns a group of services. `service.name` is expected to be unique
* within the same namespace. If `service.namespace` is not specified in the Resource then
* `service.name` is expected to be unique for all services that have no explicit namespace
* defined (so the empty/unspecified namespace is simply one more valid namespace). Zero-length
* namespace string is assumed equal to unspecified namespace.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> SERVICE_NAMESPACE = stringKey("service.namespace");
/**
* The string ID of the service instance.
*
* <p>Note: MUST be unique for each instance of the same `service.namespace,service.name` pair (in
* other words `service.namespace,service.name,service.id` triplet MUST be globally unique). The
* ID helps to distinguish instances of the same service that exist at the same time (e.g.
* instances of a horizontally scaled service). It is preferable for the ID to be persistent and
* stay the same for the lifetime of the service instance, however it is acceptable that the ID is
* ephemeral and changes during important lifetime events for the service (e.g. service restarts).
* If the service has no inherent unique ID that can be used as the value of this attribute it is
* recommended to generate a random Version 1 or Version 4 RFC 4122 UUID (services aiming for
* reproducible UUIDs may also use Version 5, see RFC 4122 for more recommendations).
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> SERVICE_INSTANCE_ID = stringKey("service.instance.id");
/**
* The version string of the service API or implementation.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> SERVICE_VERSION = stringKey("service.version");
/**
* The name of the telemetry SDK as defined above.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> TELEMETRY_SDK_NAME = stringKey("telemetry.sdk.name");
/**
* The language of the telemetry SDK.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> TELEMETRY_SDK_LANGUAGE =
stringKey("telemetry.sdk.language");
/**
* The version string of the telemetry SDK.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> TELEMETRY_SDK_VERSION =
stringKey("telemetry.sdk.version");
/**
* The version string of the auto instrumentation agent, if used.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final AttributeKey<String> TELEMETRY_AUTO_VERSION =
stringKey("telemetry.auto.version");
/**
* An identifier for the database management system (DBMS) product being used. See below for a
* list of well-known identifiers.
@ -1197,116 +542,6 @@ public final class SemanticAttributes {
public static final AttributeKey<Long> RPC_GRPC_STATUS_CODE = longKey("rpc.grpc.status_code");
// Enum definitions
/**
* This has been deprecated.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final class CloudProviderValues {
/** Amazon Web Services. */
public static final String AWS = "aws";
/** Microsoft Azure. */
public static final String AZURE = "azure";
/** Google Cloud Platform. */
public static final String GCP = "gcp";
private CloudProviderValues() {}
}
/**
* This has been deprecated.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public enum AwsEcsLaunchtypeValues {
/** ec2. */
EC2("EC2"),
/** fargate. */
FARGATE("Fargate"),
;
private final String value;
AwsEcsLaunchtypeValues(String value) {
this.value = value;
}
public String getValue() {
return value;
}
}
/**
* This has been deprecated.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final class OsTypeValues {
/** Microsoft Windows. */
public static final String WINDOWS = "WINDOWS";
/** Linux. */
public static final String LINUX = "LINUX";
/** Apple Darwin. */
public static final String DARWIN = "DARWIN";
/** FreeBSD. */
public static final String FREEBSD = "FREEBSD";
/** NetBSD. */
public static final String NETBSD = "NETBSD";
/** OpenBSD. */
public static final String OPENBSD = "OPENBSD";
/** DragonFly BSD. */
public static final String DRAGONFLYBSD = "DRAGONFLYBSD";
/** HP-UX (Hewlett Packard Unix). */
public static final String HPUX = "HPUX";
/** AIX (Advanced Interactive eXecutive). */
public static final String AIX = "AIX";
/** Oracle Solaris. */
public static final String SOLARIS = "SOLARIS";
/** IBM z/OS. */
public static final String ZOS = "ZOS";
private OsTypeValues() {}
}
/**
* This has been deprecated.
*
* @deprecated Will be removed in favor of {@link
* io.opentelemetry.semconv.resource.attributes.ResourceAttributes}
*/
@Deprecated
public static final class TelemetrySdkLanguageValues {
/** cpp. */
public static final String CPP = "cpp";
/** dotnet. */
public static final String DOTNET = "dotnet";
/** erlang. */
public static final String ERLANG = "erlang";
/** go. */
public static final String GO = "go";
/** java. */
public static final String JAVA = "java";
/** nodejs. */
public static final String NODEJS = "nodejs";
/** php. */
public static final String PHP = "php";
/** python. */
public static final String PYTHON = "python";
/** ruby. */
public static final String RUBY = "ruby";
/** webjs. */
public static final String WEBJS = "webjs";
private TelemetrySdkLanguageValues() {}
}
public static final class DbSystemValues {
/** Some other SQL database. Fallback only. See notes. */
public static final String OTHER_SQL = "other_sql";