Go to file
SylvainJuge ef0caea27e
span stacktrace refactor + autoconfig (#1499)
2024-10-17 07:40:30 -07:00
.github Add Sylvain Juge as component owner for jmx-metrics (#1493) 2024-10-15 12:21:22 +03:00
all Bump spotless-plugin-gradle from 6.12.0 to 6.12.1 (#669) 2023-01-02 16:15:07 +00:00
aws-resources fix(deps): update semconvversion to v1.28.0-alpha (#1498) 2024-10-15 19:42:58 -07:00
aws-xray Ensure all XRay Sampler functionality is under ParentBased logic (#1488) 2024-10-07 09:48:51 -07:00
aws-xray-propagator Add declarative config support for aws xray propagators (#1442) 2024-09-16 10:23:41 -07:00
baggage-processor add config support for BaggageSpanProcessor (#1330) 2024-06-17 12:46:02 -07:00
buildSrc Update dependency com.gradle.enterprise:com.gradle.enterprise.gradle.plugin to v3.18.1 (#1450) 2024-09-10 15:20:46 -07:00
buildscripts Update change log for 1.13.0 (#303) 2022-04-20 14:31:58 +09:00
compressors/compressor-zstd fix(deps): update dependency com.github.luben:zstd-jni to v1.5.6-6 (#1469) 2024-09-23 09:13:26 -07:00
config/license Build logic changes (#41) 2021-06-30 22:43:20 +09:00
consistent-sampling Updating the README file (#1502) 2024-10-17 07:10:10 -07:00
dependencyManagement fix(deps): update semconvversion to v1.28.0-alpha (#1498) 2024-10-15 19:42:58 -07:00
disk-buffering [disk-buffering] Add debug mode for verbose logging. (#1455) 2024-09-17 08:44:40 -07:00
example Update example to follow current conventions. (#212) 2022-01-20 13:56:18 +09:00
gcp-resources fix(deps): update semconvversion to v1.28.0-alpha (#1498) 2024-10-15 19:42:58 -07:00
gradle/wrapper chore(deps): update dependency gradle to v8.10.2 (#1470) 2024-09-23 15:28:25 -07:00
inferred-spans Rename param and description to proper value (#1486) 2024-10-04 10:37:19 -07:00
jfr-connection jfr-connection: jfr-connection: wrong parameter sent to JFR DiagnosticCommand (#1492) 2024-10-16 08:20:27 -07:00
jfr-events Jfr streaming version (#721) 2023-02-02 08:27:25 -06:00
jmx-metrics Add Sylvain Juge as component owner for jmx-metrics (#1493) 2024-10-15 12:21:22 +03:00
jmx-scraper Reuse JMX Insights in Scraper + Tomcat support (#1485) 2024-10-16 08:12:46 -07:00
kafka-exporter implement kafka-exporter (#965) 2024-01-10 10:38:29 -08:00
maven-extension Inline incubating attributes + central semconv-incubating dependency (#1298) 2024-05-28 09:16:36 -07:00
micrometer-meter-provider fix(deps): update dependency io.micrometer:micrometer-core to v1.13.6 (#1496) 2024-10-14 16:46:58 -07:00
noop-api Jfr streaming version (#721) 2023-02-02 08:27:25 -06:00
opamp-client Creating an opamp-client module (#1472) 2024-09-26 08:56:15 -07:00
processors Update dependency io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha to v2.8.0-alpha (#1456) 2024-09-16 09:50:03 -05:00
prometheus-client-bridge Update dependency io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha to v1.31.0-alpha (#1072) 2023-10-13 14:40:08 -07:00
resource-providers Update errorProneVersion to v2.27.1 (#1294) 2024-05-08 07:40:52 -07:00
runtime-attach fix(deps): update dependency net.bytebuddy:byte-buddy-agent to v1.15.5 (#1503) 2024-10-17 14:54:49 +03:00
samplers Add declarative config support for RuleBasedRoutingSampler (#1440) 2024-09-16 14:05:50 -07:00
span-stacktrace span stacktrace refactor + autoconfig (#1499) 2024-10-17 07:40:30 -07:00
static-instrumenter Update dependency org.apache.maven.plugin-tools:maven-plugin-annotations to v3.15.0 (#1436) 2024-09-03 15:42:37 -07:00
.editorconfig Bump com.diffplug.spotless from 6.12.1 to 6.13.0 (#700) 2023-01-17 19:29:26 -08:00
.gitattributes Initial project structure (#2) 2020-08-19 21:27:48 -07:00
.gitignore Target Java 17 for all project (#329) 2022-05-10 15:33:06 +09:00
CHANGELOG.md Update version to 1.40.0-SNAPSHOT (#1460) 2024-09-17 16:04:58 +00:00
CONTRIBUTING.md Add gradle conventions to contributing (#336) 2023-05-24 07:29:49 -07:00
LICENSE Initial commit 2020-08-17 14:57:15 -07:00
README.md add stability status to libraries (#1446) 2024-09-17 10:34:48 -07:00
RELEASING.md Update release instructions to reflect dependabot -> renovate (#993) 2023-08-03 11:29:13 +02:00
build.gradle.kts Remove unused plugin (#1004) 2023-08-16 13:05:14 -07:00
gradle.properties Remove workaround (#696) 2023-01-16 08:37:11 +01:00
gradlew Update dependency gradle to v8.9 (#1374) 2024-07-18 08:18:19 -07:00
gradlew.bat Update dependency gradle to v8.9 (#1374) 2024-07-18 08:18:19 -07:00
settings.gradle.kts [WIP] JMX scraper (#1445) 2024-09-27 07:12:20 -07:00
version.gradle.kts Update version to 1.40.0-SNAPSHOT (#1460) 2024-09-17 16:04:58 +00:00

README.md

OpenTelemetry Java Contrib

Build

This project is intended to provide helpful libraries and standalone OpenTelemetry-based utilities that don't fit the express scope of the OpenTelemetry Java or Java Instrumentation projects. If you need an easier way to bring observability to remote JVM-based applications and workflows that isn't easily satisfied by an SDK feature or via instrumentation, this project is hopefully for you.

Provided Libraries

Status* Library
beta AWS Resources
stable AWS X-Ray SDK Support
alpha AWS X-Ray Propagator
alpha Baggage Span Processor
alpha zstd Compressor
alpha Consistent Sampling
alpha Disk Buffering
beta GCP Resources
beta Inferred Spans
alpha JFR Connection
alpha JFR Events
alpha JMX Metric Gatherer
alpha Kafka Support
alpha OpenTelemetry Maven Extension
alpha Micrometer MeterProvider
alpha No-Op API
alpha Intercept and Process Signals Globally
alpha Prometheus Client Bridge
alpha Resource Providers
alpha Runtime Attach
alpha Samplers
beta Span Stacktrace Capture
alpha Static Instrumenter

* alpha, beta and stable are currently used to denote library status per otep 0232. To reach stable status, the library needs to have stable APIs, stable semantic conventions, and be production ready. On reaching stable status, the otel.stable value in gradle.properties should be set to true. Note that currently all the libraries are released together with the version of this repo, so breaking changes (after stable status is reached) would bump the major version of all libraries together. This could get complicated so stable has a high bar.

Getting Started

# Apply formatting
$ ./gradlew spotlessApply

# Build the complete project
$ ./gradlew build

# Run integration tests
$ ./gradlew integrationTest

# Clean artifacts
$ ./gradlew clean

Contributing

The Java Contrib project was initially formed to provide methods of easy remote JMX metric gathering and reporting, which is actively in development. If you have an idea for a similar use case in the metrics, traces, or logging domain we would be very interested in supporting it. Please open an issue to share your idea or suggestion. PRs are always welcome and greatly appreciated, but for larger functional changes a pre-coding introduction can be helpful to ensure this is the correct place and that active or conflicting efforts don't exist.

Triagers (@open-telemetry/java-contrib-triagers):

Approvers (@open-telemetry/java-contrib-approvers):

Maintainers (@open-telemetry/java-contrib-maintainers):

Emeritus maintainers:

Learn more about roles in the community repository.

Thanks to all the people who already contributed!