Skip to content

Commit baf0eaa

Browse files
renovate[bot]trask
andauthored
Update dependency io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha to v2.3.0-alpha (#1267)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Trask Stalnaker <[email protected]>
1 parent 425bfb9 commit baf0eaa

File tree

39 files changed

+383
-309
lines changed

39 files changed

+383
-309
lines changed

aws-resources/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ dependencies {
1212
api("io.opentelemetry:opentelemetry-sdk")
1313

1414
implementation("io.opentelemetry.semconv:opentelemetry-semconv")
15+
implementation("io.opentelemetry.semconv:opentelemetry-semconv-incubating:1.25.0-alpha")
1516

1617
compileOnly("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure")
1718

aws-resources/src/main/java/io/opentelemetry/contrib/aws/resource/BeanstalkResource.java

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,21 @@
55

66
package io.opentelemetry.contrib.aws.resource;
77

8+
import static io.opentelemetry.semconv.ServiceAttributes.SERVICE_VERSION;
9+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PLATFORM;
10+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PROVIDER;
11+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudPlatformValues.AWS_ELASTIC_BEANSTALK;
12+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudProviderValues.AWS;
13+
import static io.opentelemetry.semconv.incubating.ServiceIncubatingAttributes.SERVICE_INSTANCE_ID;
14+
import static io.opentelemetry.semconv.incubating.ServiceIncubatingAttributes.SERVICE_NAMESPACE;
15+
816
import com.fasterxml.jackson.core.JsonFactory;
917
import com.fasterxml.jackson.core.JsonParser;
1018
import com.fasterxml.jackson.core.JsonToken;
1119
import io.opentelemetry.api.common.Attributes;
1220
import io.opentelemetry.api.common.AttributesBuilder;
1321
import io.opentelemetry.sdk.resources.Resource;
14-
import io.opentelemetry.semconv.ResourceAttributes;
22+
import io.opentelemetry.semconv.SchemaUrls;
1523
import java.io.File;
1624
import java.io.IOException;
1725
import java.util.logging.Level;
@@ -58,21 +66,21 @@ static Resource buildResource(String configPath) {
5866

5967
if (!parser.isExpectedStartObjectToken()) {
6068
logger.log(Level.WARNING, "Invalid Beanstalk config: ", configPath);
61-
return Resource.create(attrBuilders.build(), ResourceAttributes.SCHEMA_URL);
69+
return Resource.create(attrBuilders.build(), SchemaUrls.V1_25_0);
6270
}
6371

6472
while (parser.nextToken() != JsonToken.END_OBJECT) {
6573
parser.nextValue();
6674
String value = parser.getText();
6775
switch (parser.currentName()) {
6876
case DEVELOPMENT_ID:
69-
attrBuilders.put(ResourceAttributes.SERVICE_INSTANCE_ID, value);
77+
attrBuilders.put(SERVICE_INSTANCE_ID, value);
7078
break;
7179
case VERSION_LABEL:
72-
attrBuilders.put(ResourceAttributes.SERVICE_VERSION, value);
80+
attrBuilders.put(SERVICE_VERSION, value);
7381
break;
7482
case ENVIRONMENT_NAME:
75-
attrBuilders.put(ResourceAttributes.SERVICE_NAMESPACE, value);
83+
attrBuilders.put(SERVICE_NAMESPACE, value);
7684
break;
7785
default:
7886
parser.skipChildren();
@@ -83,12 +91,10 @@ static Resource buildResource(String configPath) {
8391
return Resource.empty();
8492
}
8593

86-
attrBuilders.put(ResourceAttributes.CLOUD_PROVIDER, ResourceAttributes.CloudProviderValues.AWS);
87-
attrBuilders.put(
88-
ResourceAttributes.CLOUD_PLATFORM,
89-
ResourceAttributes.CloudPlatformValues.AWS_ELASTIC_BEANSTALK);
94+
attrBuilders.put(CLOUD_PROVIDER, AWS);
95+
attrBuilders.put(CLOUD_PLATFORM, AWS_ELASTIC_BEANSTALK);
9096

91-
return Resource.create(attrBuilders.build(), ResourceAttributes.SCHEMA_URL);
97+
return Resource.create(attrBuilders.build(), SchemaUrls.V1_25_0);
9298
}
9399

94100
private BeanstalkResource() {}

aws-resources/src/main/java/io/opentelemetry/contrib/aws/resource/Ec2Resource.java

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,25 @@
55

66
package io.opentelemetry.contrib.aws.resource;
77

8+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_ACCOUNT_ID;
9+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_AVAILABILITY_ZONE;
10+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PLATFORM;
11+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PROVIDER;
12+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_REGION;
13+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudPlatformValues.AWS_EC2;
14+
import static io.opentelemetry.semconv.incubating.HostIncubatingAttributes.HOST_ID;
15+
import static io.opentelemetry.semconv.incubating.HostIncubatingAttributes.HOST_IMAGE_ID;
16+
import static io.opentelemetry.semconv.incubating.HostIncubatingAttributes.HOST_NAME;
17+
import static io.opentelemetry.semconv.incubating.HostIncubatingAttributes.HOST_TYPE;
18+
819
import com.fasterxml.jackson.core.JsonFactory;
920
import com.fasterxml.jackson.core.JsonParser;
1021
import com.fasterxml.jackson.core.JsonToken;
1122
import io.opentelemetry.api.common.Attributes;
1223
import io.opentelemetry.api.common.AttributesBuilder;
1324
import io.opentelemetry.sdk.resources.Resource;
14-
import io.opentelemetry.semconv.ResourceAttributes;
25+
import io.opentelemetry.semconv.SchemaUrls;
26+
import io.opentelemetry.semconv.incubating.CloudIncubatingAttributes;
1527
import java.io.IOException;
1628
import java.net.MalformedURLException;
1729
import java.net.URL;
@@ -78,9 +90,8 @@ static Resource buildResource(String endpoint) {
7890
String hostname = fetchHostname(hostnameUrl, token);
7991

8092
AttributesBuilder attrBuilders = Attributes.builder();
81-
attrBuilders.put(ResourceAttributes.CLOUD_PROVIDER, ResourceAttributes.CloudProviderValues.AWS);
82-
attrBuilders.put(
83-
ResourceAttributes.CLOUD_PLATFORM, ResourceAttributes.CloudPlatformValues.AWS_EC2);
93+
attrBuilders.put(CLOUD_PROVIDER, CloudIncubatingAttributes.CloudProviderValues.AWS);
94+
attrBuilders.put(CLOUD_PLATFORM, AWS_EC2);
8495

8596
try (JsonParser parser = JSON_FACTORY.createParser(identity)) {
8697
parser.nextToken();
@@ -93,22 +104,22 @@ static Resource buildResource(String endpoint) {
93104
String value = parser.nextTextValue();
94105
switch (parser.currentName()) {
95106
case "instanceId":
96-
attrBuilders.put(ResourceAttributes.HOST_ID, value);
107+
attrBuilders.put(HOST_ID, value);
97108
break;
98109
case "availabilityZone":
99-
attrBuilders.put(ResourceAttributes.CLOUD_AVAILABILITY_ZONE, value);
110+
attrBuilders.put(CLOUD_AVAILABILITY_ZONE, value);
100111
break;
101112
case "instanceType":
102-
attrBuilders.put(ResourceAttributes.HOST_TYPE, value);
113+
attrBuilders.put(HOST_TYPE, value);
103114
break;
104115
case "imageId":
105-
attrBuilders.put(ResourceAttributes.HOST_IMAGE_ID, value);
116+
attrBuilders.put(HOST_IMAGE_ID, value);
106117
break;
107118
case "accountId":
108-
attrBuilders.put(ResourceAttributes.CLOUD_ACCOUNT_ID, value);
119+
attrBuilders.put(CLOUD_ACCOUNT_ID, value);
109120
break;
110121
case "region":
111-
attrBuilders.put(ResourceAttributes.CLOUD_REGION, value);
122+
attrBuilders.put(CLOUD_REGION, value);
112123
break;
113124
default:
114125
parser.skipChildren();
@@ -119,9 +130,9 @@ static Resource buildResource(String endpoint) {
119130
return Resource.empty();
120131
}
121132

122-
attrBuilders.put(ResourceAttributes.HOST_NAME, hostname);
133+
attrBuilders.put(HOST_NAME, hostname);
123134

124-
return Resource.create(attrBuilders.build(), ResourceAttributes.SCHEMA_URL);
135+
return Resource.create(attrBuilders.build(), SchemaUrls.V1_25_0);
125136
}
126137

127138
private static String fetchToken(URL tokenUrl) {

aws-resources/src/main/java/io/opentelemetry/contrib/aws/resource/EcsResource.java

Lines changed: 44 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,34 @@
55

66
package io.opentelemetry.contrib.aws.resource;
77

8+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_ECS_CONTAINER_ARN;
9+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_ECS_LAUNCHTYPE;
10+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_ECS_TASK_ARN;
11+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_ECS_TASK_FAMILY;
12+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_ECS_TASK_REVISION;
13+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_LOG_GROUP_ARNS;
14+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_LOG_GROUP_NAMES;
15+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_LOG_STREAM_ARNS;
16+
import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_LOG_STREAM_NAMES;
17+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_ACCOUNT_ID;
18+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_AVAILABILITY_ZONE;
19+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PLATFORM;
20+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PROVIDER;
21+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_REGION;
22+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_RESOURCE_ID;
23+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudPlatformValues.AWS_ECS;
24+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudProviderValues.AWS;
25+
import static io.opentelemetry.semconv.incubating.ContainerIncubatingAttributes.CONTAINER_ID;
26+
import static io.opentelemetry.semconv.incubating.ContainerIncubatingAttributes.CONTAINER_IMAGE_NAME;
27+
import static io.opentelemetry.semconv.incubating.ContainerIncubatingAttributes.CONTAINER_NAME;
28+
829
import com.fasterxml.jackson.core.JsonFactory;
930
import com.fasterxml.jackson.core.JsonParser;
1031
import com.fasterxml.jackson.core.JsonToken;
1132
import io.opentelemetry.api.common.Attributes;
1233
import io.opentelemetry.api.common.AttributesBuilder;
1334
import io.opentelemetry.sdk.resources.Resource;
14-
import io.opentelemetry.semconv.ResourceAttributes;
35+
import io.opentelemetry.semconv.SchemaUrls;
1536
import java.io.IOException;
1637
import java.util.Collections;
1738
import java.util.Locale;
@@ -58,7 +79,7 @@ static Resource buildResource(Map<String, String> sysEnv, SimpleHttpClient httpC
5879
// For TaskARN, Family, Revision.
5980
// May put the same attribute twice but that shouldn't matter.
6081
fetchMetadata(httpClient, ecsMetadataUrl + "/task", attrBuilders);
61-
return Resource.create(attrBuilders.build(), ResourceAttributes.SCHEMA_URL);
82+
return Resource.create(attrBuilders.build(), SchemaUrls.V1_25_0);
6283
}
6384
// Not running on ECS
6485
return Resource.empty();
@@ -70,9 +91,8 @@ static void fetchMetadata(
7091
if (json.isEmpty()) {
7192
return;
7293
}
73-
attrBuilders.put(ResourceAttributes.CLOUD_PROVIDER, ResourceAttributes.CloudProviderValues.AWS);
74-
attrBuilders.put(
75-
ResourceAttributes.CLOUD_PLATFORM, ResourceAttributes.CloudPlatformValues.AWS_ECS);
94+
attrBuilders.put(CLOUD_PROVIDER, AWS);
95+
attrBuilders.put(CLOUD_PLATFORM, AWS_ECS);
7696
try (JsonParser parser = JSON_FACTORY.createParser(json)) {
7797
parser.nextToken();
7898
LogArnBuilder logArnBuilder = new LogArnBuilder();
@@ -82,17 +102,14 @@ static void fetchMetadata(
82102
.getLogGroupArn()
83103
.ifPresent(
84104
logGroupArn -> {
85-
attrBuilders.put(
86-
ResourceAttributes.AWS_LOG_GROUP_ARNS, Collections.singletonList(logGroupArn));
105+
attrBuilders.put(AWS_LOG_GROUP_ARNS, Collections.singletonList(logGroupArn));
87106
});
88107

89108
logArnBuilder
90109
.getLogStreamArn()
91110
.ifPresent(
92111
logStreamArn -> {
93-
attrBuilders.put(
94-
ResourceAttributes.AWS_LOG_STREAM_ARNS,
95-
Collections.singletonList(logStreamArn));
112+
attrBuilders.put(AWS_LOG_STREAM_ARNS, Collections.singletonList(logStreamArn));
96113
});
97114
} catch (IOException e) {
98115
logger.log(Level.WARNING, "Can't get ECS metadata", e);
@@ -151,26 +168,28 @@ static void parseResponse(
151168
String value = parser.nextTextValue();
152169
switch (parser.currentName()) {
153170
case "AvailabilityZone":
154-
attrBuilders.put(ResourceAttributes.CLOUD_AVAILABILITY_ZONE, value);
171+
attrBuilders.put(CLOUD_AVAILABILITY_ZONE, value);
155172
break;
156173
case "DockerId":
157-
attrBuilders.put(ResourceAttributes.CONTAINER_ID, value);
174+
attrBuilders.put(CONTAINER_ID, value);
158175
break;
159176
case "DockerName":
160-
attrBuilders.put(ResourceAttributes.CONTAINER_NAME, value);
177+
attrBuilders.put(CONTAINER_NAME, value);
161178
break;
162179
case "ContainerARN":
163180
arn = value;
164-
attrBuilders.put(ResourceAttributes.AWS_ECS_CONTAINER_ARN, value);
165-
attrBuilders.put(ResourceAttributes.CLOUD_RESOURCE_ID, value);
181+
attrBuilders.put(AWS_ECS_CONTAINER_ARN, value);
182+
attrBuilders.put(CLOUD_RESOURCE_ID, value);
166183
logArnBuilder.setContainerArn(value);
167184
break;
168185
case "Image":
169186
DockerImage parsedImage = DockerImage.parse(value);
170187
if (parsedImage != null) {
171-
attrBuilders.put(ResourceAttributes.CONTAINER_IMAGE_NAME, parsedImage.getRepository());
188+
attrBuilders.put(CONTAINER_IMAGE_NAME, parsedImage.getRepository());
172189
// TODO: CONTAINER_IMAGE_TAG has been replaced with CONTAINER_IMAGE_TAGS
173-
attrBuilders.put(ResourceAttributes.CONTAINER_IMAGE_TAG, parsedImage.getTag());
190+
attrBuilders.put(
191+
io.opentelemetry.semconv.ResourceAttributes.CONTAINER_IMAGE_TAG,
192+
parsedImage.getTag());
174193
}
175194
break;
176195
case "ImageID":
@@ -181,38 +200,37 @@ static void parseResponse(
181200
parseResponse(parser, attrBuilders, logArnBuilder);
182201
break;
183202
case "awslogs-group":
184-
attrBuilders.put(ResourceAttributes.AWS_LOG_GROUP_NAMES, value);
203+
attrBuilders.put(AWS_LOG_GROUP_NAMES, value);
185204
logArnBuilder.setLogGroupName(value);
186205
break;
187206
case "awslogs-stream":
188-
attrBuilders.put(ResourceAttributes.AWS_LOG_STREAM_NAMES, value);
207+
attrBuilders.put(AWS_LOG_STREAM_NAMES, value);
189208
logArnBuilder.setLogStreamName(value);
190209
break;
191210
case "awslogs-region":
192211
logArnBuilder.setRegion(value);
193212
break;
194213
case "TaskARN":
195214
arn = value;
196-
attrBuilders.put(ResourceAttributes.AWS_ECS_TASK_ARN, value);
215+
attrBuilders.put(AWS_ECS_TASK_ARN, value);
197216
break;
198217
case "LaunchType":
199-
attrBuilders.put(ResourceAttributes.AWS_ECS_LAUNCHTYPE, value.toLowerCase(Locale.ROOT));
218+
attrBuilders.put(AWS_ECS_LAUNCHTYPE, value.toLowerCase(Locale.ROOT));
200219
break;
201220
case "Family":
202-
attrBuilders.put(ResourceAttributes.AWS_ECS_TASK_FAMILY, value);
221+
attrBuilders.put(AWS_ECS_TASK_FAMILY, value);
203222
break;
204223
case "Revision":
205-
attrBuilders.put(ResourceAttributes.AWS_ECS_TASK_REVISION, value);
224+
attrBuilders.put(AWS_ECS_TASK_REVISION, value);
206225
break;
207226
default:
208227
parser.skipChildren();
209228
break;
210229
}
211230
}
212231

213-
getRegion(arn).ifPresent(region -> attrBuilders.put(ResourceAttributes.CLOUD_REGION, region));
214-
getAccountId(arn)
215-
.ifPresent(accountId -> attrBuilders.put(ResourceAttributes.CLOUD_ACCOUNT_ID, accountId));
232+
getRegion(arn).ifPresent(region -> attrBuilders.put(CLOUD_REGION, region));
233+
getAccountId(arn).ifPresent(accountId -> attrBuilders.put(CLOUD_ACCOUNT_ID, accountId));
216234
}
217235

218236
private EcsResource() {}

aws-resources/src/main/java/io/opentelemetry/contrib/aws/resource/EksResource.java

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,20 @@
55

66
package io.opentelemetry.contrib.aws.resource;
77

8+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PLATFORM;
9+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CLOUD_PROVIDER;
10+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudPlatformValues.AWS_EKS;
11+
import static io.opentelemetry.semconv.incubating.CloudIncubatingAttributes.CloudProviderValues.AWS;
12+
import static io.opentelemetry.semconv.incubating.ContainerIncubatingAttributes.CONTAINER_ID;
13+
import static io.opentelemetry.semconv.incubating.K8sIncubatingAttributes.K8S_CLUSTER_NAME;
14+
815
import com.fasterxml.jackson.core.JsonFactory;
916
import com.fasterxml.jackson.core.JsonParser;
1017
import com.fasterxml.jackson.core.JsonToken;
1118
import io.opentelemetry.api.common.Attributes;
1219
import io.opentelemetry.api.common.AttributesBuilder;
1320
import io.opentelemetry.sdk.resources.Resource;
14-
import io.opentelemetry.semconv.ResourceAttributes;
21+
import io.opentelemetry.semconv.SchemaUrls;
1522
import java.io.File;
1623
import java.io.IOException;
1724
import java.nio.charset.StandardCharsets;
@@ -65,21 +72,20 @@ static Resource buildResource(
6572
}
6673

6774
AttributesBuilder attrBuilders = Attributes.builder();
68-
attrBuilders.put(ResourceAttributes.CLOUD_PROVIDER, ResourceAttributes.CloudProviderValues.AWS);
69-
attrBuilders.put(
70-
ResourceAttributes.CLOUD_PLATFORM, ResourceAttributes.CloudPlatformValues.AWS_EKS);
75+
attrBuilders.put(CLOUD_PROVIDER, AWS);
76+
attrBuilders.put(CLOUD_PLATFORM, AWS_EKS);
7177

7278
String clusterName = getClusterName(httpClient);
7379
if (clusterName != null && !clusterName.isEmpty()) {
74-
attrBuilders.put(ResourceAttributes.K8S_CLUSTER_NAME, clusterName);
80+
attrBuilders.put(K8S_CLUSTER_NAME, clusterName);
7581
}
7682

7783
String containerId = dockerHelper.getContainerId();
7884
if (containerId != null && !containerId.isEmpty()) {
79-
attrBuilders.put(ResourceAttributes.CONTAINER_ID, containerId);
85+
attrBuilders.put(CONTAINER_ID, containerId);
8086
}
8187

82-
return Resource.create(attrBuilders.build(), ResourceAttributes.SCHEMA_URL);
88+
return Resource.create(attrBuilders.build(), SchemaUrls.V1_25_0);
8389
}
8490

8591
private static boolean isEks(

0 commit comments

Comments
 (0)