summaryrefslogtreecommitdiff
path: root/vendor/go.opentelemetry.io/auto/sdk/limit.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/go.opentelemetry.io/auto/sdk/limit.go')
-rw-r--r--vendor/go.opentelemetry.io/auto/sdk/limit.go94
1 files changed, 0 insertions, 94 deletions
diff --git a/vendor/go.opentelemetry.io/auto/sdk/limit.go b/vendor/go.opentelemetry.io/auto/sdk/limit.go
deleted file mode 100644
index 86babf1a8..000000000
--- a/vendor/go.opentelemetry.io/auto/sdk/limit.go
+++ /dev/null
@@ -1,94 +0,0 @@
-// Copyright The OpenTelemetry Authors
-// SPDX-License-Identifier: Apache-2.0
-
-package sdk
-
-import (
- "log/slog"
- "os"
- "strconv"
-)
-
-// maxSpan are the span limits resolved during startup.
-var maxSpan = newSpanLimits()
-
-type spanLimits struct {
- // Attrs is the number of allowed attributes for a span.
- //
- // This is resolved from the environment variable value for the
- // OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT key if it exists. Otherwise, the
- // environment variable value for OTEL_ATTRIBUTE_COUNT_LIMIT, or 128 if
- // that is not set, is used.
- Attrs int
- // AttrValueLen is the maximum attribute value length allowed for a span.
- //
- // This is resolved from the environment variable value for the
- // OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT key if it exists. Otherwise, the
- // environment variable value for OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT, or -1
- // if that is not set, is used.
- AttrValueLen int
- // Events is the number of allowed events for a span.
- //
- // This is resolved from the environment variable value for the
- // OTEL_SPAN_EVENT_COUNT_LIMIT key, or 128 is used if that is not set.
- Events int
- // EventAttrs is the number of allowed attributes for a span event.
- //
- // The is resolved from the environment variable value for the
- // OTEL_EVENT_ATTRIBUTE_COUNT_LIMIT key, or 128 is used if that is not set.
- EventAttrs int
- // Links is the number of allowed Links for a span.
- //
- // This is resolved from the environment variable value for the
- // OTEL_SPAN_LINK_COUNT_LIMIT, or 128 is used if that is not set.
- Links int
- // LinkAttrs is the number of allowed attributes for a span link.
- //
- // This is resolved from the environment variable value for the
- // OTEL_LINK_ATTRIBUTE_COUNT_LIMIT, or 128 is used if that is not set.
- LinkAttrs int
-}
-
-func newSpanLimits() spanLimits {
- return spanLimits{
- Attrs: firstEnv(
- 128,
- "OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT",
- "OTEL_ATTRIBUTE_COUNT_LIMIT",
- ),
- AttrValueLen: firstEnv(
- -1, // Unlimited.
- "OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT",
- "OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT",
- ),
- Events: firstEnv(128, "OTEL_SPAN_EVENT_COUNT_LIMIT"),
- EventAttrs: firstEnv(128, "OTEL_EVENT_ATTRIBUTE_COUNT_LIMIT"),
- Links: firstEnv(128, "OTEL_SPAN_LINK_COUNT_LIMIT"),
- LinkAttrs: firstEnv(128, "OTEL_LINK_ATTRIBUTE_COUNT_LIMIT"),
- }
-}
-
-// firstEnv returns the parsed integer value of the first matching environment
-// variable from keys. The defaultVal is returned if the value is not an
-// integer or no match is found.
-func firstEnv(defaultVal int, keys ...string) int {
- for _, key := range keys {
- strV := os.Getenv(key)
- if strV == "" {
- continue
- }
-
- v, err := strconv.Atoi(strV)
- if err == nil {
- return v
- }
- slog.Warn(
- "invalid limit environment variable",
- "error", err,
- "key", key,
- "value", strV,
- )
- }
-
- return defaultVal
-}