Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add specific config options to config doc #379

Merged
merged 6 commits into from
Aug 21, 2024

Conversation

jackshirazi
Copy link
Contributor

Adding the full set of config options that are additional or have different defaults from the upstream OpenTelemetry agent

docs/configure.md Outdated Show resolved Hide resolved
@@ -65,10 +65,11 @@ java -Dotel.javaagent.configuration-file=my.properties ...

## Configuration options
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jackshirazi what do you think about reorganizing this content in a structure like the content below? (I'm not sure where OTEL_INSTRUMENTATION_RUNTIME-TELEMETRY_EMIT-EXPERIMENTAL-TELEMETRY fits in...)


Configuration options

Because the Elastic Distribution of OpenTelemetry Java is an extension of the OpenTelemetry Java agent, it supports:

  • General OpenTelemetry configuration options
  • Configuration options from OpenTelemetry extensions that are included with EDOT Java
  • Configuration options that are only available in EDOT Java

OpenTelemetry configuration options

EDOT Java supports all configuration options listed in the OpenTelemetry General SDK Configuration documentation and OpenTelemetry Java agent documentation.

EDOT Java uses different defaults than the OpenTelemetry Java agent for the following configuration options:

Option EDOT Java default OpenTelemetry Java agent default
OTEL_RESOURCE_PROVIDERS_AWS_ENABLED enabled disabled (docs)
OTEL_RESOURCE_PROVIDERS_GCP_ENABLED enabled disabled (docs)

Configuration options from OpenTelemetry extensions

EDOT Java includes several OpenTelemetry extensions from the OpenTelemetry Java agent contrib repo. These extensions offer the following additional OTEL_ options:

Option(s) Extension Description
OTEL_SERVICE_NAME Resource providers Can be set as usual, but if not set this will be inferred when the EDOT Java agent is running in various application servers.
OTEL_INFERRED_SPANS_* Inferred Spans
OTEL_SPAN_STACK_TRACE_MIN_DURATION Span stacktrace capture in milliseconds, defaults to 5ms
OTEL_INSTRUMENTATION_RUNTIME-TELEMETRY_EMIT-EXPERIMENTAL-TELEMETRY Experimental runtime metrics are enabled by default. Set otel.instrumentation.runtime-telemetry.emit-experimental-telemetry to false to disable them.

EDOT Java configuration options

In addition to general OpenTelemetry configuration options, there are two kinds of configuration options that are only available in EDOT Java.

Elastic-authored options that are not yet available upstream

Additional OTEL_ options are configuration options that Elastic plans to contribute upstream to the OpenTelemetry Java agent but are not yet available in the OpenTelemetry Java agent.

Currently there are no additional OTEL_ options that are only available in EDOT Java.

Elastic-specific options

ELASTIC_OTEL_ options that are specific to Elastic and will always live in EDOT Java (in other words, they will not be added upstream) including:

Option(s) Extension Description
ELASTIC_OTEL_UNIVERSAL_PROFILING_INTEGRATION_* Universal profiling integration

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Much better thank you! Do you want to apply the changes to the branch or shall I?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be happy to apply the change and push a commit after my afternoon meetings (unless you want to go ahead to get it done earlier).

@jackshirazi jackshirazi merged commit edaf005 into elastic:main Aug 21, 2024
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants