Skip to content

Commit

Permalink
Merge branch 'main' into fix-key-store
Browse files Browse the repository at this point in the history
  • Loading branch information
rolfedh authored Nov 9, 2023
2 parents c75efc2 + 2251ce3 commit bc2df2a
Show file tree
Hide file tree
Showing 13 changed files with 603 additions and 10 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/develocity-publish-build-scans.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ jobs:
run: |
echo "preapproved-developpers<<EOF" >> $GITHUB_OUTPUT
cat .github/develocity-preapproved-developers.json >> $GITHUB_OUTPUT
echo >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
- name: Publish Maven Build Scans
uses: gradle/github-actions/maven-build-scan/publish@v1-beta
Expand All @@ -31,6 +32,7 @@ jobs:
develocity-access-key: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
skip-comment: true
- name: Push to summary
if: ${{ contains(fromJson(steps.extract-preapproved-developers.outputs.preapproved-developpers).preapproved-developers, github.event.workflow_run.actor.login) }}
run: |
echo -n "Pull request: " >> ${GITHUB_STEP_SUMMARY}
cat pr-number.out >> ${GITHUB_STEP_SUMMARY}
Expand Down
2 changes: 1 addition & 1 deletion bom/application/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@
<jboss-logging-annotations.version>2.2.1.Final</jboss-logging-annotations.version>
<slf4j.version>2.0.6</slf4j.version>
<slf4j-jboss-logmanager.version>2.0.0.Final</slf4j-jboss-logmanager.version>
<wildfly-common.version>1.5.4.Final-format-001</wildfly-common.version>
<wildfly-common.version>1.7.0.Final</wildfly-common.version>
<wildfly-client-config.version>1.0.1.Final</wildfly-client-config.version>
<wildfly-elytron.version>2.2.2.Final</wildfly-elytron.version>
<jboss-threads.version>3.5.1.Final</jboss-threads.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -911,8 +911,10 @@ public NativeImageInvokerInfo build() {

if (nativeConfig.autoServiceLoaderRegistration()) {
addExperimentalVMOption(nativeImageArgs, "-H:+UseServiceLoaderFeature");
//When enabling, at least print what exactly is being added:
nativeImageArgs.add("-H:+TraceServiceLoaderFeature");
if (graalVMVersion.compareTo(GraalVM.Version.VERSION_23_1_0) < 0) {
// When enabling, at least print what exactly is being added. Only possible in <23.1.0
nativeImageArgs.add("-H:+TraceServiceLoaderFeature");
}
} else {
addExperimentalVMOption(nativeImageArgs, "-H:-UseServiceLoaderFeature");
}
Expand Down
Binary file added docs/src/main/asciidoc/images/ot-to-otel-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/src/main/asciidoc/images/ot-to-otel-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/src/main/asciidoc/images/ot-to-otel-3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 30 additions & 3 deletions docs/src/main/asciidoc/opentelemetry.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,14 @@ include::_attributes.adoc[]
This guide explains how your Quarkus application can utilize https://opentelemetry.io/[OpenTelemetry] (OTel) to provide
distributed tracing for interactive web applications.

OpenTelemetry Metrics and Logging are not yet supported.

[NOTE]
====
- OpenTelemetry Metrics and Logging are not yet supported.
- Quarkus now supports the OpenTelemetry Autoconfiguration for Traces. The configurations match what you can see at
https://github.com/open-telemetry/opentelemetry-java/blob/main/sdk-extensions/autoconfigure/README.md[OpenTelemetry SDK Autoconfigure]
with the `quarkus.*` prefix.
- Extensions and the libraries they provide, are directly instrumented in Quarkus. The *use of the https://opentelemetry.io/docs/instrumentation/java/automatic/[OpenTelemetry Agent] is not needed nor recommended* due to context propagation issues between imperative and reactive libraries.
- If you come from the legacy OpenTracing extension, there is a xref:telemetry-opentracing-to-otel-tutorial.adoc[guide to help with the migration].
====

== Prerequisites
Expand Down Expand Up @@ -138,6 +137,33 @@ All configurations have been updated from `quarkus.opentelemetry.\*` -> `quarkus
The legacy configurations are now deprecated but will still work during a transition period.
====

=== Disable all or parts of the OpenTelemetry extension

Once you add the dependency, the extension will be enabled by default but there are a few ways to disable the OpenTelemetry extension globally or partially.

|===
|Property name |Default value |Description

|`quarkus.otel.enabled`
|true
|If false, disable the OpenTelemetry usage at *build* time.

|`quarkus.otel.sdk.disabled`
|false
|Comes from the OpenTelemetry autoconfiguration. If true, will disable the OpenTelemetry SDK usage at *runtime*.

|`quarkus.otel.traces.enabled`
|true
|If false, disable the OpenTelemetry tracing usage at *build* time.

|`quarkus.otel.exporter.otlp.enabled`
|true
|If false will disable the default OTLP exporter at *build* time.
|===

If you need to enable or disable the exporter at runtime, you can use the <<sampler>> because it has the ability to filter out all the spans if needed.


== Run the application

The first step is to configure and start the https://opentelemetry.io/docs/collector/[OpenTelemetry Collector] to receive, process and export telemetry data to https://www.jaegertracing.io/[Jaeger] that will display the captured traces.
Expand Down Expand Up @@ -359,6 +385,7 @@ public class CustomConfiguration {

By setting `quarkus.otel.traces.eusp.enabled=true` you can add information about the user related to each span. The user's ID and roles will be added to the span attributes, if available.

[[sampler]]
=== Sampler
A https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/sdk.md#sampling[sampler] decides whether a trace should be discarded or forwarded, effectively managing noise and reducing overhead by limiting the number of collected traces sent to the collector.

Expand Down
2 changes: 1 addition & 1 deletion docs/src/main/asciidoc/opentracing.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ interactive web applications.

[IMPORTANT]
====
xref:opentelemetry.adoc[OpenTelemetry] is the recommended approach to tracing and telemetry for Quarkus.
xref:opentelemetry.adoc[OpenTelemetry] is the recommended approach to tracing and telemetry for Quarkus and xref:telemetry-opentracing-to-otel-tutorial.adoc[a guide to help with the migration] is available.
When Quarkus will upgrade to Eclipse MicroProfile 6, the SmallRye OpenTracing support will be discontinued.
====
Expand Down
Loading

0 comments on commit bc2df2a

Please sign in to comment.