diff --git a/content/en/docs/demo/_index.md b/content/en/docs/demo/_index.md
index cb35886fbb6d..b09e5ec46468 100644
--- a/content/en/docs/demo/_index.md
+++ b/content/en/docs/demo/_index.md
@@ -52,6 +52,7 @@ found here:
- [Quote Service](services/quote/)
- [Recommendation Service](services/recommendation/)
- [Shipping Service](services/shipping/)
+- [Image Provider Service](services/imageprovider/)
## Scenarios
diff --git a/content/en/docs/demo/architecture.md b/content/en/docs/demo/architecture.md
index 26c706ff4a37..1b22adcacced 100644
--- a/content/en/docs/demo/architecture.md
+++ b/content/en/docs/demo/architecture.md
@@ -22,6 +22,7 @@ emailservice(Email Service):::ruby
frauddetectionservice(Fraud Detection Service):::kotlin
frontend(Frontend):::typescript
frontendproxy(Frontend Proxy
(Envoy)):::cpp
+imageprovider(Image Provider
(nginx)):::cpp
loadgenerator([Load Generator]):::python
paymentservice(Payment Service):::javascript
productcatalogservice(Product Catalog Service):::golang
@@ -33,6 +34,7 @@ queue[(queue
(Kafka))]
Internet -->|HTTP| frontendproxy
frontendproxy -->|HTTP| frontend
loadgenerator -->|HTTP| frontendproxy
+frontendproxy -->|HTTP| imageprovider
queue -->|TCP| accountingservice
queue -->|TCP| frauddetectionservice
diff --git a/content/en/docs/demo/services/imageprovider.md b/content/en/docs/demo/services/imageprovider.md
new file mode 100644
index 000000000000..0c597a14f866
--- /dev/null
+++ b/content/en/docs/demo/services/imageprovider.md
@@ -0,0 +1,10 @@
+---
+title: Image Provider Service
+linkTitle: Image Provider
+---
+
+This service provides the images which are used in the frontend. The images are
+statically hosted on a NGINX instance. The NGINX server is instrumented with the
+[nginx-otel module](https://github.com/nginxinc/nginx-otel/tree/main).
+
+[Image Provider service source](https://github.com/open-telemetry/opentelemetry-demo/blob/main/src/imageprovider/)
diff --git a/content/en/docs/languages/java/automatic/configuration.md b/content/en/docs/languages/java/automatic/configuration.md
index 06c4b9a1867e..4badcceeb420 100644
--- a/content/en/docs/languages/java/automatic/configuration.md
+++ b/content/en/docs/languages/java/automatic/configuration.md
@@ -30,6 +30,14 @@ specific portions of the SDK & agent:
- [Span limits](https://github.com/open-telemetry/opentelemetry-java/tree/main/sdk-extensions/autoconfigure/README.md#span-limits)
- [Using SPI to further configure the SDK](https://github.com/open-telemetry/opentelemetry-java/tree/main/sdk-extensions/autoconfigure/README.md#customizing-the-opentelemetry-sdk)
+{{% alert title="Important" color="warning" %}}
+
+Unlike the SDK autoconfiguration, versions 2.0+ of the Java agent and
+OpenTelemetry Spring Boot starter use `http/protobuf` as the default protocol,
+not `grpc`.
+
+{{% /alert %}}
+
### Enable Resource Providers that are disabled by default
In addition to the resource configuration from the SDK autoconfiguration, you
diff --git a/content/en/docs/languages/java/automatic/spring-boot.md b/content/en/docs/languages/java/automatic/spring-boot.md
index ed27a927939f..fa648effefb0 100644
--- a/content/en/docs/languages/java/automatic/spring-boot.md
+++ b/content/en/docs/languages/java/automatic/spring-boot.md
@@ -165,14 +165,18 @@ IDE.
The OpenTelemetry Starter supports all the
[SDK Autoconfiguration](/docs/languages/java/automatic/configuration/#sdk-autoconfiguration)
-(since 2.2.0). You can set properties in the `application.properties` or the
-`application.yaml` file, or use environment variables.
+(since 2.2.0).
+
+You can update the configuration with properties in the `application.properties`
+or the `application.yaml` file, or with environment variables.
`application.properties` example:
```properties
otel.propagators=tracecontext,b3
-otel.resource.attributes=environment=dev,xyz=foo
+otel.resource.attributes.deployment.environment=dev
+otel.resource.attributes.service.name=cart
+otel.resource.attributes.service.namespace=shop
```
`application.yaml` example:
@@ -184,18 +188,49 @@ otel:
- b3
resource:
attributes:
- environment: dev
- xyz: foo
+ deployment.environment: dev
+ service:
+ name: cart
+ namespace: shop
```
Environment variables example:
```shell
export OTEL_PROPAGATORS="tracecontext,b3"
-export OTEL_RESOURCE_ATTRIBUTES="environment=dev,xyz=foo"
+export OTEL_RESOURCE_ATTRIBUTES="deployment.environment=dev,service.name=cart,service.namespace=shop"
+```
+
+#### Overriding Resource Attributes
+
+As usual in Spring Boot, you can override properties in the
+`application.properties` and `application.yaml` files with environment
+variables.
+
+For example, you can set or override the `deployment.environment` resource
+attribute (not changing `service.name` or `service.namespace`) by setting the
+standard `OTEL_RESOURCE_ATTRIBUTES` environment variable:
+
+```shell
+export OTEL_RESOURCE_ATTRIBUTES="deployment.environment=prod"
```
-Disable the OpenTelemetry Starter:
+Alternatively, you can use the `OTEL_RESOURCE_ATTRIBUTES_DEPLOYMENT_ENVIRONMENT`
+environment variable to set or override a single resource attribute:
+
+```shell
+export OTEL_RESOURCE_ATTRIBUTES_DEPLOYMENT_ENVIRONMENT="prod"
+```
+
+The second option supports
+[SpEL](https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework-reference/html/expressions.html)
+expressions.
+
+Note that `DEPLOYMENT_ENVIRONMENT` gets converted to `deployment.environment` by
+Spring Boot's
+[Relaxed Binding](https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config.typesafe-configuration-properties.relaxed-binding.environment-variables).
+
+#### Disable the OpenTelemetry Starter
{{% config_option name="otel.sdk.disabled" %}}
diff --git a/content/en/status.md b/content/en/status.md
index 55aac19db39f..a8b214215edf 100644
--- a/content/en/status.md
+++ b/content/en/status.md
@@ -36,6 +36,15 @@ core collector components currently have mixed
stability documented in its `README.md`. You can find a list of all available
collector components in the [registry](/ecosystem/registry/?language=collector).
+## Kubernetes Operator
+
+The OpenTelemetry Operator status is
+[mixed](/docs/specs/otel/document-status/#mixed), since it deploys components of
+differing statuses.
+
+The Operator itself is in a [mixed](/docs/specs/otel/document-status/#mixed)
+state with components in `v1alpha1` and `v1beta1` states.
+
## Specifications
For the development status, or maturity level, of the
diff --git a/data/ecosystem/vendors.yaml b/data/ecosystem/vendors.yaml
index 2c9b001963ee..b0e928a02e58 100644
--- a/data/ecosystem/vendors.yaml
+++ b/data/ecosystem/vendors.yaml
@@ -308,9 +308,9 @@
commercial: true
- name: Uptrace
nativeOTLP: true
- url: https://uptrace.dev
+ url: https://uptrace.dev/get/open-source-apm.html
contact:
- oss: false
+ oss: true
commercial: true
- name: Apache SkyWalking
nativeOTLP: true
diff --git a/static/refcache.json b/static/refcache.json
index 4c60e47840b9..1375377256d4 100644
--- a/static/refcache.json
+++ b/static/refcache.json
@@ -1635,6 +1635,10 @@
"StatusCode": 206,
"LastSeen": "2024-02-19T17:27:38.673604461+01:00"
},
+ "https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config.typesafe-configuration-properties.relaxed-binding.environment-variables": {
+ "StatusCode": 200,
+ "LastSeen": "2024-04-11T13:40:26.805402963+02:00"
+ },
"https://docs.spring.io/spring-boot/docs/current/reference/html/using.html#using.auto-configuration": {
"StatusCode": 206,
"LastSeen": "2024-01-30T16:15:14.908906-05:00"
@@ -1643,6 +1647,10 @@
"StatusCode": 200,
"LastSeen": "2024-01-30T16:14:53.797365-05:00"
},
+ "https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework-reference/html/expressions.html": {
+ "StatusCode": 206,
+ "LastSeen": "2024-04-03T12:51:54.758528517+02:00"
+ },
"https://docs.spring.io/spring-security/reference/servlet/authorization/architecture.html#authz-authorities": {
"StatusCode": 206,
"LastSeen": "2024-02-12T22:02:33.483262-05:00"
@@ -7703,7 +7711,7 @@
"StatusCode": 206,
"LastSeen": "2024-01-30T06:06:33.174666-05:00"
},
- "https://uptrace.dev": {
+ "https://uptrace.dev/get/open-source-apm.html": {
"StatusCode": 206,
"LastSeen": "2024-01-18T19:08:12.676498-05:00"
},