diff --git a/README.md b/README.md index b4e87d8925..b5106780fb 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,4 @@ + ---
@@ -38,104 +39,36 @@
---
-## About this project
-
-This is a repository for OpenTelemetry JavaScript contributions that are not part of the
-[core repository](https://github.com/open-telemetry/opentelemetry-js) and
-core distribution of the API and SDK.
-
-## Instrumentations
-
-OpenTelemetry can collect tracing data automatically using instrumentations. Vendors/Users can also create and use their own. Currently, OpenTelemetry supports automatic tracing for:
-
-### Node Instrumentations
-
-- [@opentelemetry/instrumentation-amqplib][otel-contrib-instrumentation-amqplib]
-- [@opentelemetry/instrumentation-aws-lambda][otel-contrib-instrumentation-aws-lambda]
-- [@opentelemetry/instrumentation-aws-sdk][otel-contrib-instrumentation-aws-sdk]
-- [@opentelemetry/instrumentation-bunyan][otel-contrib-instrumentation-bunyan]
-- [@opentelemetry/instrumentation-cassandra-driver][otel-contrib-instrumentation-cassandra]
-- [@opentelemetry/instrumentation-connect][otel-contrib-instrumentation-connect]
-- [@opentelemetry/instrumentation-dns][otel-contrib-instrumentation-dns]
-- [@opentelemetry/instrumentation-express][otel-contrib-instrumentation-express]
-- [@opentelemetry/instrumentation-fastify][otel-contrib-instrumentation-fastify]
-- [@opentelemetry/instrumentation-fs][otel-contrib-instrumentation-fs]
-- [@opentelemetry/instrumentation-generic-pool][otel-contrib-instrumentation-generic-pool]
-- [@opentelemetry/instrumentation-graphql][otel-contrib-instrumentation-graphql]
-- [@opentelemetry/instrumentation-grpc][otel-instrumentation-grpc]
-- [@opentelemetry/instrumentation-hapi][otel-contrib-instrumentation-hapi]
-- [@opentelemetry/instrumentation-http][otel-instrumentation-http]
-- [@opentelemetry/instrumentation-ioredis][otel-contrib-instrumentation-ioredis]
-- [@opentelemetry/instrumentation-knex][otel-contrib-instrumentation-knex]
-- [@opentelemetry/instrumentation-koa][otel-contrib-instrumentation-koa]
-- [@opentelemetry/instrumentation-memcached][otel-contrib-instrumentation-memcached]
-- [@opentelemetry/instrumentation-mongodb][otel-contrib-instrumentation-mongodb]
-- [@opentelemetry/instrumentation-mysql2][otel-contrib-instrumentation-mysql2]
-- [@opentelemetry/instrumentation-mysql][otel-contrib-instrumentation-mysql]
-- [@opentelemetry/instrumentation-nestjs-core][otel-contrib-instrumentation-nestjs-core]
-- [@opentelemetry/instrumentation-net][otel-contrib-instrumentation-net]
-- [@opentelemetry/instrumentation-pg][otel-contrib-instrumentation-pg]
-- [@opentelemetry/instrumentation-pino][otel-contrib-instrumentation-pino]
-- [@opentelemetry/instrumentation-redis][otel-contrib-instrumentation-redis]
-- [@opentelemetry/instrumentation-restify][otel-contrib-instrumentation-restify]
-- [@opentelemetry/instrumentation-router][otel-contrib-instrumentation-router]
-- [@opentelemetry/instrumentation-tedious][otel-contrib-instrumentation-tedious]
-- [@opentelemetry/instrumentation-winston][otel-contrib-instrumentation-winston]
-
-### Web Instrumentations
-
-- [@opentelemetry/instrumentation-document-load][otel-contrib-instrumentation-document-load]
-- [@opentelemetry/instrumentation-fetch][otel-instrumentation-fetch]
-- [@opentelemetry/instrumentation-long-task][otel-contrib-instrumentation-long-task]
-- [@opentelemetry/instrumentation-user-interaction][otel-contrib-instrumentation-user-interaction]
-- [@opentelemetry/instrumentation-xml-http-request][otel-instrumentation-xml-http-request]
-- [@opentelemetry/plugin-react-load][otel-contrib-plugin-react-load]
-
-### Metapackages
-
-Multiple instrumentations may be leveraged via metapackages.
-
-- [@opentelemetry/auto-instrumentations-node][otel-contrib-auto-instr-node] - Metapackage which bundles opentelemetry node core and contrib instrumentations
-- [@opentelemetry/auto-instrumentations-web][otel-contrib-auto-instr-web] - Metapackage which bundles opentelemetry web core and contrib instrumentations
-
-## Resource Detectors
-
-OpenTelemetry can collect resource attributes of the entity that producing telemetry. For example, a process producing telemetry that is running in a container on Kubernetes has a Pod name, it is in a namespace and possibly is part of a Deployment which also has a name. All three of these attributes can be included in the `Resource`.
-
-Currently, OpenTelemetry supports automatic collection for following environments:
-
-- [@opentelemetry/resource-detector-alibaba-cloud][otel-contrib-resource-detector-alibaba-cloud]
-- [@opentelemetry/resource-detector-aws][otel-contrib-resource-detector-aws]
-- [@opentelemetry/resource-detector-gcp][otel-contrib-resource-detector-gcp]
-- [@opentelemetry/resource-detector-github][otel-contrib-resource-detector-github]
+# OpenTelemetry Javascript Contrib
-## Supported Runtimes
+A repository for OpenTelemetry JavaScript contributions that are not part of the [core repository](https://github.com/open-telemetry/opentelemetry-js) and core distribution of the API and the SDK.
+
+This project includes:
+
+* [Instrumentations & other plugins](./plugins),
+* [Metapackages](./metapackages),
+* [Context Propagators](./propagators),
+* [Resource Detectors](./detectors).
-Platform Version | Supported
----------------- | ---------
-Node.JS `v16` | ✅
-Node.JS `v14` | ✅
-Node.JS `v12` | ✅
-Node.JS `v10` | ✅
-Node.JS `v8` | See [Node Support](#node-support) below
-Web Browsers | ✅ See [Browser Support](#browser-support) below
+**Instrumentations**: OpenTelemetry can collect tracing data automatically using instrumentations. Vendors/Users can also create and use their own.
-### Node Support
+**Resource Detectors**: OpenTelemetry can collect resource attributes of the entity that producing telemetry. For example, a process producing telemetry that is running in a container on Kubernetes has a Pod name, it is in a namespace and possibly is part of a Deployment which also has a name. All three of these attributes can be included in the `Resource`.
-Automated tests are run using the latest release of each currently active version of Node.JS.
-While Node.JS v8 and v10 are no longer supported by the Node.JS team, the latest versions of Node.JS v8 and v10 are still included in our testing suite.
-Please note that versions of Node.JS v8 prior to `v8.5.0` will NOT work, because OpenTelemetry Node depends on the `perf_hooks` module introduced in `v8.5.0`
+## Supported Runtimes
+
+Packages in this repository have a variable range of support for Node.JS and browser versions which for each package depend on
-### Browser Support
+* the activeness of the owners of those packages,
+* used techniques or runtime features and
+* in the case of the auto-instrumentations, the supported runtime versions for the underlying package.
-Automated browser tests are run in the latest version of Headless Chrome.
-There is currently no list of officially supported browsers, but OpenTelemetry is developed using standard web technologies with wide support and should work in currently supported versions of major browsers.
+See the `README.md` files and the `engines` field in the `package.json` files for the respective packages for support information about that package.
+
+See [the support section](https://github.com/open-telemetry/opentelemetry-js#node-support) in the core repository for more general information.
## Contributing
-We'd love your help!. Use tags [up-for-grabs][up-for-grabs-issues] and
-[good first issue][good-first-issues] to get started with the project. Follow
-[CONTRIBUTING](CONTRIBUTING.md) guide to report issues or submit a proposal.
+We'd love your help! Use tags [up-for-grabs][up-for-grabs-issues] and [good first issue][good-first-issues] to get started with the project. Follow [CONTRIBUTING](CONTRIBUTING.md) guide to report issues or submit a proposal.
### Thanks to all the people who already contributed
@@ -145,8 +78,9 @@ We'd love your help!. Use tags [up-for-grabs][up-for-grabs-issues] and
## Useful links
-- For more information on OpenTelemetry, visit: