{"id":21042781,"url":"https://github.com/aws-observability/aws-otel-java-instrumentation","last_synced_at":"2025-04-05T02:10:10.427Z","repository":{"id":36977882,"uuid":"295885890","full_name":"aws-observability/aws-otel-java-instrumentation","owner":"aws-observability","description":"AWS Distro for OpenTelemetry Java Instrumentation Library","archived":false,"fork":false,"pushed_at":"2024-10-29T22:12:48.000Z","size":1819,"stargazers_count":74,"open_issues_count":21,"forks_count":55,"subscribers_count":19,"default_branch":"main","last_synced_at":"2024-10-29T22:41:04.507Z","etag":null,"topics":["observability","opensource","opentelemetry","opentelemetry-api"],"latest_commit_sha":null,"homepage":"https://aws-otel.github.io/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aws-observability.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-16T00:57:21.000Z","updated_at":"2024-10-25T21:17:18.000Z","dependencies_parsed_at":"2023-11-18T00:03:09.879Z","dependency_job_id":"1e452f6e-2303-4ebc-abba-3f76932968a2","html_url":"https://github.com/aws-observability/aws-otel-java-instrumentation","commit_stats":null,"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws-observability%2Faws-otel-java-instrumentation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws-observability%2Faws-otel-java-instrumentation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws-observability%2Faws-otel-java-instrumentation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws-observability%2Faws-otel-java-instrumentation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aws-observability","download_url":"https://codeload.github.com/aws-observability/aws-otel-java-instrumentation/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247276189,"owners_count":20912288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["observability","opensource","opentelemetry","opentelemetry-api"],"created_at":"2024-11-19T14:09:00.874Z","updated_at":"2025-04-05T02:10:10.400Z","avatar_url":"https://github.com/aws-observability.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AWS Distro for OpenTelemetry - Instrumentation for Java\n\n## Introduction\n\nThis project is a redistribution of the [OpenTelemetry Agent for Java](https://github.com/open-telemetry/opentelemetry-java-instrumentation),\npreconfigured for use with AWS services. Please check out that project too to get a better\nunderstanding of the underlying internals. You won't see much code in this repository since we only\napply some small configuration changes, and our OpenTelemetry friends takes care of the rest.\n\nWe provided a Java agent JAR that can be attached to any Java 8+ application and dynamically injects \nbytecode to capture telemetry from a number of popular libraries and frameworks. The telemetry data \ncan be exported in a variety of formats. In addition, the agent and exporter can be configured via \ncommand line arguments or environment variables. The net result is the ability to gather telemetry\ndata from a Java application without any code changes.\n\nNote: There are 2.x releases and 1.x releases. The 2.0 release included significant breaking changes from [OpenTelemetry Agent for Java](https://github.com/open-telemetry/opentelemetry-java-instrumentation), \nthe details of which can be found in the [release notes](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases). \nIt is recommended to use the latest 2.x release which will have the latest features and improvements. \n1.x will receive security patches for a limited time and will not include other bug fixes and enhancements.\n\n## Getting Started\n\nCheck out the [getting started documentation](https://aws-otel.github.io/docs/getting-started/java-sdk/auto-instr).\n\n## Supported Java libraries and frameworks\n\nFor the complete list of supported frameworks, please refer to the [OpenTelemetry for Java documentation](https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/master/README.md#supported-java-libraries-and-frameworks).\n\n## How it works\n\nThe [OpenTelemetry Java SDK](https://github.com/open-telemetry/opentelemetry-java) provides knobs\nfor configuring aspects using Java [SPI](https://docs.oracle.com/javase/tutorial/sound/SPI-intro.html).\nThis configuration includes being able to reconfigure the [IdsGenerator](https://github.com/open-telemetry/opentelemetry-java-contrib/blob/ed5c91ea2ea0cfd36b77c1f871c540ceba1c057b/aws-xray/src/main/java/io/opentelemetry/contrib/awsxray/AwsXrayIdGenerator.java)\nwhich we need to support X-Ray compatible trace IDs. Because the SDK uses SPI, it is sufficient for\nthe custom implementation to be on the classpath to be recognized. The AWS distribution of the\nOpenTelemetry Java Agent repackages the upstream agent by simply adding our SPI implementation for\nreconfiguring the ID generator. In addition, it includes [AWS resource providers](https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-resources/src/main/java/io/opentelemetry/contrib/aws/resource) \nby default, and it sets a system property to configure the agent to use multiple trace ID propagators, \ndefaulting to maximum interoperability.\n\nOther than that, the distribution is identical to the upstream agent and all configuration can be\nused as is.\n\n## Standardized Sample Applications \n\nIn addition to the sample apps in this repository, there are also a set of [standardized sample applications](https://github.com/aws-observability/aws-otel-community/tree/master/sample-apps) that can be used. You can find the standardized Java sample app [here](https://github.com/aws-observability/aws-otel-community/tree/master/sample-apps/java-sample-app).\n\n## Support\n\nPlease note that as per policy, we're providing support via GitHub on a best effort basis. However, if you have AWS Enterprise Support you can create a ticket and we will provide direct support within the respective SLAs.\n\n## Security issue notifications\n\nIf you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via our [vulnerability reporting page](http://aws.amazon.com/security/vulnerability-reporting/). Please do **not** create a public github issue.\n\n## Checksum Verification\n\nArtifacts released will include a `.sha256` file for checksum verification starting from v1.32.6\nTo verify, run the command `shasum -a 256 -c \u003cartifact_name\u003e.sha256` \nIt should return the output `\u003cartifact_name\u003e: OK` if the validation is successful\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws-observability%2Faws-otel-java-instrumentation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faws-observability%2Faws-otel-java-instrumentation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws-observability%2Faws-otel-java-instrumentation/lists"}