Skip to content

Commit

Permalink
Merge branch 'main' into patch-2
Browse files Browse the repository at this point in the history
  • Loading branch information
tejaskokje-mw authored Feb 5, 2024
2 parents 2c6fc16 + 8058738 commit d358ec0
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 46 deletions.
91 changes: 48 additions & 43 deletions content/en/docs/languages/java/instrumentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,22 +190,47 @@ You should get a list of 12 numbers in your browser window, for example:
For both library and app instrumentation, the first step is to install the
dependencies for the OpenTelemetry API.

Throughout this documentation you will add dependencies. For a full list of
artifact coordinates, see [releases]. For semantic convention releases, see
[semantic-conventions-java].

[releases]: https://github.com/open-telemetry/opentelemetry-java#releases
[semantic-conventions-java]:
https://github.com/open-telemetry/semantic-conventions-java/releases

### Dependency management

A Bill of Material
([BOM](https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#bill-of-materials-bom-poms))
ensures that versions of dependencies (including transitive ones) are aligned.
Importing the `opentelemetry-bom` BOM is important to ensure version alignment
across all OpenTelemetry dependencies.

{{< tabpane text=true >}} {{% tab Gradle %}}

```kotlin { hl_lines=3 }
```kotlin { hl_lines=["1-5",9] }
dependencyManagement {
imports {
mavenBom("io.opentelemetry:opentelemetry-bom:{{% param vers.otel %}}")
}
}

dependencies {
implementation("org.springframework.boot:spring-boot-starter-web");
implementation("io.opentelemetry:opentelemetry-api:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-api");
}
```

Throughout this documentation you will add dependencies. For a full list of
artifact coordinates, see [releases]. For semantic convention releases, see
[semantic-conventions-java].
If you are not using Spring and its `io.spring.dependency-management` dependency
management plugin, install the OpenTelemetry BOM and API using Gradle
dependencies only.

[releases]: https://github.com/open-telemetry/opentelemetry-java#releases
[semantic-conventions-java]:
https://github.com/open-telemetry/semantic-conventions-java/releases
```kotlin
dependencies {
implementation(platform("io.opentelemetry:opentelemetry-bom:{{% param vers.otel %}}"));
implementation("io.opentelemetry:opentelemetry-api");
}
```

{{% /tab %}} {{% tab Maven %}}

Expand Down Expand Up @@ -238,50 +263,32 @@ artifact coordinates, see [releases]. For semantic convention releases, see
{{% alert title="Note" color="info" %}} If you’re instrumenting a library,
**skip this step**. {{% /alert %}}

If you instrument a Java app, install the dependencies for the OpenTelemetry
SDK.
The OpenTelemetry API provides a set of interfaces for collecting telemetry, but
the data is dropped without an implementation. The OpenTelemetry SDK is the
implementation of the OpenTelemetry API provided by OpenTelemetry. To use it if
you instrument a Java app, begin by installing dependencies:

{{< tabpane text=true >}} {{% tab Gradle %}}

```kotlin { hl_lines="4-8" }
```kotlin { hl_lines="4-6" }
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web");
implementation("io.opentelemetry:opentelemetry-api:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-sdk:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-sdk-metrics:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-exporter-logging:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-semconv:{{% param vers.otel %}}-alpha");
implementation("io.opentelemetry:opentelemetry-api");
implementation("io.opentelemetry:opentelemetry-sdk");
implementation("io.opentelemetry:opentelemetry-exporter-logging");
implementation("io.opentelemetry.semconv:opentelemetry-semconv:{{% param vers.semconv %}}-alpha");
}
```

{{% /tab %}} {{% tab Maven %}}

```xml
<project>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-bom</artifactId>
<version>{{% param vers.otel %}}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-api</artifactId>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk</artifactId>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-sdk-metrics</artifactId>
</dependency>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-logging</artifactId>
Expand Down Expand Up @@ -312,16 +319,14 @@ To use autoconfiguration add the following dependency to your application:

{{< tabpane text=true >}} {{% tab Gradle %}}

```kotlin { hl_lines="9-10" }
```kotlin { hl_lines="7" }
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web");
implementation("io.opentelemetry:opentelemetry-api:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-sdk:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-sdk-metrics:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-exporter-logging:{{% param vers.otel %}}");
implementation("io.opentelemetry.semconv:opentelemetry-semconv:{{% param vers.semconv %}}-alpha")
implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:{{% param vers.otel %}}");
implementation("io.opentelemetry:opentelemetry-api");
implementation("io.opentelemetry:opentelemetry-sdk");
implementation("io.opentelemetry:opentelemetry-exporter-logging");
implementation("io.opentelemetry.semconv:opentelemetry-semconv:{{% param vers.semconv %}}-alpha");
implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure");
}
```

Expand Down
2 changes: 1 addition & 1 deletion data/registry/instrumentation-elixir-ecto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ createdAt: 2022-03-23
package:
registry: hex
name: opentelemetry_ecto
version: 1.1.1
version: 1.1.2
2 changes: 1 addition & 1 deletion data/registry/instrumentation-erlang-ecto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@ createdAt: 2022-03-23
package:
registry: hex
name: opentelemetry_ecto
version: 1.1.1
version: 1.1.2
2 changes: 1 addition & 1 deletion data/registry/instrumentation-php-yii.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ createdAt: 2022-12-14
package:
registry: packagist
name: open-telemetry/opentelemetry-auto-yii
version: 0.0.3
version: 0.0.4

0 comments on commit d358ec0

Please sign in to comment.