Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .fossa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -924,10 +924,10 @@ targets:
target: ':instrumentation:rxjava:rxjava-3.0:library'
- type: gradle
path: ./
target: ':instrumentation:rxjava:rxjava-3.1.1:javaagent'
target: ':instrumentation:rxjava:rxjava-3.1:javaagent'
- type: gradle
path: ./
target: ':instrumentation:rxjava:rxjava-3.1.1:library'
target: ':instrumentation:rxjava:rxjava-3.1:library'
- type: gradle
path: ./
target: ':instrumentation:rxjava:rxjava-common-3.0:library'
Expand Down Expand Up @@ -1047,16 +1047,16 @@ targets:
target: ':instrumentation:vertx:vertx-web-3.0:javaagent'
- type: gradle
path: ./
target: ':instrumentation:xxl-job:xxl-job-1.9.2:javaagent'
target: ':instrumentation:xxl-job:xxl-job-1.9:javaagent'
- type: gradle
path: ./
target: ':instrumentation:xxl-job:xxl-job-2.1.2:javaagent'
target: ':instrumentation:xxl-job:xxl-job-2.1:javaagent'
- type: gradle
path: ./
target: ':instrumentation:xxl-job:xxl-job-2.3.0:javaagent'
target: ':instrumentation:xxl-job:xxl-job-2.3:javaagent'
- type: gradle
path: ./
target: ':instrumentation:xxl-job:xxl-job-common-1.9.2:javaagent'
target: ':instrumentation:xxl-job:xxl-job-common-1.9:javaagent'
- type: gradle
path: ./
target: ':instrumentation:zio:zio-2.0:javaagent'
Expand Down
14 changes: 7 additions & 7 deletions .github/scripts/instrumentations.sh
Original file line number Diff line number Diff line change
Expand Up @@ -309,13 +309,13 @@ readonly INSTRUMENTATIONS=(
"vertx:vertx-sql-client:vertx-sql-client-5.0:javaagent:testStableSemconv"
"vibur-dbcp-11.0:javaagent:test"
"vibur-dbcp-11.0:javaagent:testStableSemconv"
"xxl-job:xxl-job-1.9.2:javaagent:test"
"xxl-job:xxl-job-1.9.2:javaagent:testExperimental"
"xxl-job:xxl-job-2.1.2:javaagent:test"
"xxl-job:xxl-job-2.1.2:javaagent:testExperimental"
"xxl-job:xxl-job-2.3.0:javaagent:test"
"xxl-job:xxl-job-2.3.0:javaagent:testExperimental"
"xxl-job:xxl-job-2.3.0:javaagent:xxlJob33Test"
"xxl-job:xxl-job-1.9:javaagent:test"
"xxl-job:xxl-job-1.9:javaagent:testExperimental"
"xxl-job:xxl-job-2.1:javaagent:test"
"xxl-job:xxl-job-2.1:javaagent:testExperimental"
"xxl-job:xxl-job-2.3:javaagent:test"
"xxl-job:xxl-job-2.3:javaagent:testExperimental"
"xxl-job:xxl-job-2.3:javaagent:xxlJob33Test"
)

# Some instrumentation test suites don't run ARM, so we use colima to run them in an x86_64
Expand Down
11 changes: 11 additions & 0 deletions docs/contributing/writing-instrumentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,14 @@ the instrumented library and the oldest version being targeted. Ideally an old v
library is targeted in a way that the instrumentation applies to a large range of versions, but this
may be restricted by the interception APIs provided by the library.

The version suffix should usually use the major/minor line of the oldest supported library version.
When the oldest supported version is a patch release, include the patch number only when that patch
is a meaningful compatibility boundary. For example, Couchbase has both `couchbase-3.1`, which
supports `[3.1,3.1.6)`, and `couchbase-3.1.6`, which supports `[3.1.6,3.2.0)`, so the patch suffix
distinguishes real sibling modules. When there is no split inside the minor line, omit the patch
number: users should generally be on the latest patch for a given minor line, and patch-level
suffixes add noisy module names unless they represent a real compatibility boundary.

Within the subfolder, create three folders `library` (skip if library instrumentation is not
possible),`javaagent`, and `testing`.

Expand Down Expand Up @@ -438,6 +446,9 @@ When creating a common module shared among different instrumentations, the namin
include a version suffix that matches the major/minor version of the instrumented library specified
in the common module's `build.gradle.kts`.

If that dependency uses a patch release as its oldest supported version, follow the same rule as
above and include the patch number only when it represents a real compatibility boundary.

For example, if the common module's Gradle file contains the following dependency:

```kotlin
Expand Down
24 changes: 12 additions & 12 deletions docs/instrumentation-list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13977,16 +13977,16 @@ libraries:
Enables the experimental span attribute `rxjava.canceled`.
type: boolean
default: false
- name: rxjava-3.1.1
- name: rxjava-3.1
display_name: RxJava
description: |
This instrumentation enables context propagation for RxJava 3 reactive streams and adds support for @WithSpan annotations on methods that return RxJava 3 types. It does not emit any telemetry on its own.
library_link: https://github.com/ReactiveX/RxJava/tree/3.x
features:
- CONTEXT_PROPAGATION
source_path: instrumentation/rxjava/rxjava-3.1.1
source_path: instrumentation/rxjava/rxjava-3.1
scope:
name: io.opentelemetry.rxjava-3.1.1
name: io.opentelemetry.rxjava-3.1
has_standalone_library: true
has_javaagent: true
javaagent_target_versions:
Expand Down Expand Up @@ -16889,13 +16889,13 @@ libraries:
has_javaagent: true
javaagent_target_versions:
- org.apache.wicket:wicket:[8.0.0,]
- name: xxl-job-1.9.2
- name: xxl-job-1.9
display_name: XXL-Job
description: This instrumentation enables spans for XXL-Job task executions.
library_link: https://github.com/xuxueli/xxl-job
source_path: instrumentation/xxl-job/xxl-job-1.9.2
source_path: instrumentation/xxl-job/xxl-job-1.9
scope:
name: io.opentelemetry.xxl-job-1.9.2
name: io.opentelemetry.xxl-job-1.9
has_javaagent: true
javaagent_target_versions:
- com.xuxueli:xxl-job-core:[1.9.2, 2.1.2)
Expand Down Expand Up @@ -16929,13 +16929,13 @@ libraries:
type: STRING
- name: scheduling.xxl-job.job.id
type: LONG
- name: xxl-job-2.1.2
- name: xxl-job-2.1
display_name: XXL-Job
description: This instrumentation enables spans for XXL-Job task executions.
library_link: https://github.com/xuxueli/xxl-job
source_path: instrumentation/xxl-job/xxl-job-2.1.2
source_path: instrumentation/xxl-job/xxl-job-2.1
scope:
name: io.opentelemetry.xxl-job-2.1.2
name: io.opentelemetry.xxl-job-2.1
has_javaagent: true
javaagent_target_versions:
- com.xuxueli:xxl-job-core:[2.1.2,2.3.0)
Expand Down Expand Up @@ -16969,13 +16969,13 @@ libraries:
type: STRING
- name: scheduling.xxl-job.job.id
type: LONG
- name: xxl-job-2.3.0
- name: xxl-job-2.3
display_name: XXL-Job
description: This instrumentation enables spans for XXL-Job task executions.
library_link: https://github.com/xuxueli/xxl-job
source_path: instrumentation/xxl-job/xxl-job-2.3.0
source_path: instrumentation/xxl-job/xxl-job-2.3
scope:
name: io.opentelemetry.xxl-job-2.3.0
name: io.opentelemetry.xxl-job-2.3
has_javaagent: true
javaagent_target_versions:
- com.xuxueli:xxl-job-core:[2.3.0,)
Expand Down
2 changes: 1 addition & 1 deletion docs/supported-libraries.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ These are the supported libraries and frameworks:
| [RESTEasy](https://resteasy.dev/) | 3.0+ (not including 6.0+ yet) | N/A | Provides `http.route` [2], Controller Spans [3] |
| [Restlet](https://restlet.github.io/) | 1.0+ | [opentelemetry-restlet-1.1](../instrumentation/restlet/restlet-1.1/library),<br>[opentelemetry-restlet-2.0](../instrumentation/restlet/restlet-2.0/library) | [HTTP Server Spans], [HTTP Server Metrics] |
| [RMI](https://docs.oracle.com/en/java/javase/11/docs/api/java.rmi/java/rmi/package-summary.html) | Java 8+ | | [RPC Client Spans], [RPC Server Spans] |
| [RxJava](https://github.com/ReactiveX/RxJava) | 1.0+ | [opentelemetry-rxjava-1.0](../instrumentation/rxjava/rxjava-1.0/library),<br>[opentelemetry-rxjava-2.0](../instrumentation/rxjava/rxjava-2.0/library),<br>[opentelemetry-rxjava-3.0](../instrumentation/rxjava/rxjava-3.0/library),<br>[opentelemetry-rxjava-3.1.1](../instrumentation/rxjava/rxjava-3.1.1/library) | Context propagation |
| [RxJava](https://github.com/ReactiveX/RxJava) | 1.0+ | [opentelemetry-rxjava-1.0](../instrumentation/rxjava/rxjava-1.0/library),<br>[opentelemetry-rxjava-2.0](../instrumentation/rxjava/rxjava-2.0/library),<br>[opentelemetry-rxjava-3.0](../instrumentation/rxjava/rxjava-3.0/library),<br>[opentelemetry-rxjava-3.1](../instrumentation/rxjava/rxjava-3.1/library) | Context propagation |
| [Scala ForkJoinPool](https://www.scala-lang.org/api/2.12.0/scala/concurrent/forkjoin/package$$ForkJoinPool$.html) | 2.8+ | N/A | Context propagation |
| [Servlet](https://javaee.github.io/javaee-spec/javadocs/javax/servlet/package-summary.html) | 2.2+ | [opentelemetry-servlet-3.0](../instrumentation/servlet/servlet-3.0/library),<br>[opentelemetry-servlet-5.0](../instrumentation/servlet/servlet-5.0/library) | [HTTP Server Spans], [HTTP Server Metrics] |
| [Spark Web Framework](https://github.com/perwendel/spark) | 2.3+ | N/A | Provides `http.route` [2] |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ dependencies {

testInstrumentation(project(":instrumentation:opentelemetry-extension-annotations-1.0:javaagent"))
testInstrumentation(project(":instrumentation:rxjava:rxjava-3.0:javaagent"))
testInstrumentation(project(":instrumentation:rxjava:rxjava-3.1.1:javaagent"))
testInstrumentation(project(":instrumentation:rxjava:rxjava-3.1:javaagent"))

testImplementation(project(":instrumentation-annotations"))
testImplementation("io.opentelemetry:opentelemetry-extension-annotations")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ dependencies {

testInstrumentation(project(":instrumentation:opentelemetry-extension-annotations-1.0:javaagent"))
testInstrumentation(project(":instrumentation:rxjava:rxjava-2.0:javaagent"))
testInstrumentation(project(":instrumentation:rxjava:rxjava-3.1.1:javaagent"))
testInstrumentation(project(":instrumentation:rxjava:rxjava-3.1:javaagent"))

latestDepTestLibrary("io.reactivex.rxjava3:rxjava:3.1.0") // see rxjava-3.1.1 module
latestDepTestLibrary("io.reactivex.rxjava3:rxjava:3.1.0") // see rxjava-3.1 module
}

tasks {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ dependencies {

testImplementation(project(":instrumentation:rxjava:rxjava-common-3.0:testing"))

latestDepTestLibrary("io.reactivex.rxjava3:rxjava:3.1.0") // see rxjava-3.1.1 module
latestDepTestLibrary("io.reactivex.rxjava3:rxjava:3.1.0") // see rxjava-3.1 module
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ dependencies {
library("io.reactivex.rxjava3:rxjava:3.1.1")
compileOnly(project(":instrumentation-annotations-support"))

implementation(project(":instrumentation:rxjava:rxjava-3.1.1:library"))
implementation(project(":instrumentation:rxjava:rxjava-3.1:library"))

testImplementation(project(":instrumentation:rxjava:rxjava-common-3.0:testing"))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import static io.opentelemetry.javaagent.extension.matcher.AgentElementMatchers.hasClassesNamed;
import static java.util.Collections.singletonList;
Expand All @@ -18,7 +18,7 @@
public class RxJava3InstrumentationModule extends InstrumentationModule {

public RxJava3InstrumentationModule() {
super("rxjava", "rxjava-3.1.1");
super("rxjava", "rxjava-3.1", "rxjava-3.1.1");
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import static net.bytebuddy.matcher.ElementMatchers.isMethod;
import static net.bytebuddy.matcher.ElementMatchers.named;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.instrumentation.api.incubator.config.internal.DeclarativeConfigUtil;
import io.opentelemetry.instrumentation.rxjava.v3_1_1.TracingAssembly;
import io.opentelemetry.instrumentation.rxjava.v3_1.TracingAssembly;
import java.util.concurrent.atomic.AtomicBoolean;

public class TracingAssemblyActivation {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractRxJava3WithSpanTest;
import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractTracedWithSpan;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractRxJava3WithSpanTest;
import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractTracedWithSpan;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractRxJava3SubscriptionTest;
import io.opentelemetry.instrumentation.testing.junit.AgentInstrumentationExtension;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.javaagent.instrumentation.rxjava.v3_1;

import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractRxJava3Test;
import io.opentelemetry.instrumentation.testing.junit.AgentInstrumentationExtension;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ context propagation through RxJava's execution model.

### Add these dependencies to your project

Replace `OPENTELEMETRY_VERSION` with the [latest release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-rxjava-3.1.1).
Replace `OPENTELEMETRY_VERSION` with the [latest release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-rxjava-3.1).

For Maven, add to your `pom.xml` dependencies:

```xml
<dependencies>
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-rxjava-3.1.1</artifactId>
<artifactId>opentelemetry-rxjava-3.1</artifactId>
<version>OPENTELEMETRY_VERSION</version>
</dependency>
</dependencies>
Expand All @@ -24,7 +24,7 @@ For Maven, add to your `pom.xml` dependencies:
For Gradle, add to your dependencies:

```kotlin
implementation("io.opentelemetry.instrumentation:opentelemetry-rxjava-3.1.1:OPENTELEMETRY_VERSION")
implementation("io.opentelemetry.instrumentation:opentelemetry-rxjava-3.1:OPENTELEMETRY_VERSION")
```

### Usage
Expand All @@ -33,7 +33,7 @@ Enable RxJava instrumentation by calling `TracingAssembly.enable()` once during
This will automatically instrument all RxJava operations in your application:

```java
import io.opentelemetry.instrumentation.rxjava.v3_1_1.TracingAssembly;
import io.opentelemetry.instrumentation.rxjava.v3_1.TracingAssembly;
import io.reactivex.rxjava3.core.Observable;
import io.reactivex.rxjava3.core.Flowable;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
* under the License.
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import io.opentelemetry.context.Context;
import io.opentelemetry.context.Scope;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import com.google.errorprone.annotations.CanIgnoreReturnValue;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
* under the License.
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import io.opentelemetry.context.Context;
import io.opentelemetry.context.Scope;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
* under the License.
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import io.opentelemetry.context.Context;
import io.opentelemetry.context.Scope;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
* under the License.
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import io.opentelemetry.context.Context;
import io.opentelemetry.context.Scope;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
* under the License.
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import io.opentelemetry.context.Context;
import io.opentelemetry.context.Scope;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

package io.opentelemetry.instrumentation.rxjava.v3_1_1;
package io.opentelemetry.instrumentation.rxjava.v3_1;

import io.opentelemetry.instrumentation.rxjava.common.v3_0.AbstractRxJava3SubscriptionTest;
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
Expand Down
Loading
Loading