You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/workflows/otel-integration-e2e-test.yml
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -58,7 +58,7 @@ jobs:
58
58
run: |
59
59
cd ./otel-integration/k8s-helm/e2e-test/
60
60
go clean -testcache
61
-
go test -v -run='^TestE2E.*' -skip='^(TestE2E_TargetAllocator_ServiceMonitorMetrics|TestE2E_InstrumentationWebhookNoCRDs)$' $(go list ./... | rg -v '/supervisor$')
61
+
go test -v -run='^TestE2E.*' -skip='^(TestE2E_TargetAllocator_ServiceMonitorMetrics|TestE2E_InstrumentationWebhookNoCRDs|TestE2E_SDKInjection)$' $(go list ./... | rg -v '/supervisor$')
Java and .NET use OTLP/gRPC to `http://$(OTEL_NODE_IP):4317`. Python uses OTLP HTTP/protobuf to `http://$(OTEL_NODE_IP):4318`.
211
212
213
+
#### SDK-only Injection
214
+
215
+
The `inject-sdk` annotation enables SDK-only injection mode for applications that are already manually instrumented or cannot be auto-instrumented with language-specific agents. This mode injects only OpenTelemetry SDK environment variables without adding init containers or modifying the application binary.
216
+
217
+
SDK-only injection uses the common environment variables configured in `opentelemetry-autoinstrumentation.manager.config.instrumentations.spec.env` along with the exporter and sampler configuration from `spec.exporter` and `spec.sampler` in the Helm values.
218
+
219
+
Use this mode when:
220
+
- Your application is already instrumented with OpenTelemetry SDK
221
+
- You want centralized configuration of SDK behavior via Kubernetes annotations
222
+
- Language-specific auto-instrumentation is not available or compatible
The injected environment variables will configure the SDK to send telemetry to the `opentelemetry-agent` DaemonSet on the same node using the endpoint from `spec.exporter.endpoint` (default: `http://$(OTEL_NODE_IP):4317`).
233
+
234
+
For more details, see the [OpenTelemetry Operator SDK-only documentation](https://github.com/open-telemetry/opentelemetry-operator/blob/main/docs/auto-instrumentation/languages/sdk-only.md).
235
+
212
236
> [!IMPORTANT]
213
237
>
214
238
> Do not enable `opentelemetry-autoinstrumentation` in a cluster that already has another OpenTelemetry Operator webhook installed, unless the webhook names and selectors are configured to avoid collisions.
# Base package only; supervisor tests require different chart values and run below.
766
-
log_test "Workflow Mode (Base): go test -v -run='^TestE2E.*' -skip='^(TestE2E_TargetAllocator_ServiceMonitorMetrics|TestE2E_InstrumentationWebhookNoCRDs)$' ."
767
+
log_test "Workflow Mode (Base): go test -v -run='^TestE2E.*' -skip='^(TestE2E_TargetAllocator_ServiceMonitorMetrics|TestE2E_InstrumentationWebhookNoCRDs|TestE2E_SDKInjection)$' ."
go test -v -run='^TestE2E.*' -skip='^(TestE2E_TargetAllocator_ServiceMonitorMetrics|TestE2E_InstrumentationWebhookNoCRDs)$'$(go list ./... | rg -v '/supervisor$')
780
+
go test -v -run='^TestE2E.*' -skip='^(TestE2E_TargetAllocator_ServiceMonitorMetrics|TestE2E_InstrumentationWebhookNoCRDs|TestE2E_SDKInjection)$'$(go list ./... | rg -v '/supervisor$')
0 commit comments