From acbe3e881eaaa2a69449d84ee9077f0fbe05cb63 Mon Sep 17 00:00:00 2001 From: svrnm Date: Fri, 15 Sep 2023 17:02:41 +0200 Subject: [PATCH 1/7] Update integrations Signed-off-by: svrnm --- content/en/ecosystem/integrations.md | 22 +++++++--- data/ecosystem/integrations.yaml | 44 +++++++++++++++++-- data/ecosystem/vendors.yaml | 7 --- .../ecosystem/integrations-table.md | 9 ++-- static/refcache.json | 36 +++++++++++++++ 5 files changed, 98 insertions(+), 20 deletions(-) diff --git a/content/en/ecosystem/integrations.md b/content/en/ecosystem/integrations.md index 9652b3fb9ea2..19a56adfa601 100644 --- a/content/en/ecosystem/integrations.md +++ b/content/en/ecosystem/integrations.md @@ -1,12 +1,21 @@ --- title: Integrations -description: OpenTelemetry integrations with other open-source projects +description: + Libraries, services and apps with first-party support of OpenTelemetry. aliases: [/integrations] -cSpell:ignore: buildx containerd quarkus --- -A non-exhaustive list of libraries, services and apps that integrate -OpenTelemetry **natively** to emit traces, metrics and logs. +OpenTelemetry's mission is +[to enable effective observability by making high-quality, portable telemetry ubiquitous](/community/mission/). +This means, that we not only want you to get observability for the applications +you develop, but that observability should be built in to all the software you +use! + +On this page we showcase a non-exhaustive list of libraries, services and apps, +that provide you with easy-to-use observability powered by OpenTelemetry. Those +libraries, services and apps have either integrated OpenTelemetry APIs & SDKs +directly for **native** out of the box telemetry or they provide a first-party +plugin that nicely fits into their own extensibility ecosystem. {{% ecosystem/integrations-table %}} @@ -19,8 +28,7 @@ The entry must include the following: - Link to the documentation that explains how enable observability using OpenTelemetry -Note that this list is for libraries, services, and apps that integrate -OpenTelemetry **natively**. +{{% alert title="Note" color="info" %}} If you provide external integration of OpenTelemetry for any kind of library, service, or app, then [add it to the registry](/ecosystem/registry/adding). @@ -30,3 +38,5 @@ any kind of services around OpenTelemetry, see [Adopters](/ecosystem/adopters). If you provide a solution that consumes OpenTelemetry to offer Observability to end users, see [Vendors](/ecosystem/vendors). + +{{% /alert %}} diff --git a/data/ecosystem/integrations.yaml b/data/ecosystem/integrations.yaml index c1dfcd3ca264..2b674d9732ee 100644 --- a/data/ecosystem/integrations.yaml +++ b/data/ecosystem/integrations.yaml @@ -1,33 +1,71 @@ -# cSpell:ignore containerd buildx Quarkus +# cSpell:ignore containerd buildx Quarkus Cerbos - name: containerd url: https://containerd.io/ docsUrl: https://github.com/containerd/containerd/blob/main/docs/tracing.md components: [Go] + oss: true - name: CRI-O url: https://cri-o.io/ docsUrl: https://github.com/cri-o/cri-o/blob/main/docs/crio.conf.5.md#criotracing-table components: [Go] -- name: Docker buildx - url: https://github.com/docker/buildx + oss: true +- name: Docker Buildx and BuildKit + url: https://www.docker.com/ docsUrl: https://docs.docker.com/build/building/opentelemetry/ components: [Go] + oss: true - name: Elasticsearch Java API Client url: https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/current/index.html docsUrl: https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/current/opentelemetry.html components: [Java] + oss: true - name: Kubernetes url: https://kubernetes.io/ docsUrl: https://kubernetes.io/docs/concepts/cluster-administration/system-traces/ components: [Go] + oss: true - name: Micrometer url: https://micrometer.io/ docsUrl: https://micrometer.io/docs/tracing#_micrometer_tracing_opentelemetry_setup components: [Java] + oss: true - name: Quarkus url: https://quarkus.io/ docsUrl: https://quarkus.io/guides/opentelemetry components: [Java] + oss: true - name: RoadRunner url: https://roadrunner.dev/ docsUrl: https://roadrunner.dev/docs/lab-otel/current/en components: [Go, PHP] + oss: true +- name: Kong API Gateway + url: http://www.konghq.com/ + docsUrl: https://docs.konghq.com/hub/kong-inc/opentelemetry/ + components: [] + oss: false +- name: NGINX Web Server + url: https://nginx.org/ + docsUrl: https://github.com/nginxinc/nginx-otel + components: [C++] + oss: true +- name: Cisco NSO + url: https://www.cisco.com/c/en/us/products/cloud-systems-management/network-services-orchestrator/index.html + docsUrl: https://developer.cisco.com/docs/nso/#!observability-exporter/ + components: [Python] + oss: false +- name: Next.js + url: https://nextjs.org/ + docsUrl: https://nextjs.org/docs/app/building-your-application/optimizing/open-telemetry + components: [JavaScript] + oss: true +- name: ThousandEyes (Cisco) + url: https://www.thousandeyes.com/ + docsUrl: 'https://docs.thousandeyes.com/product-documentation/api/opentelemetry' + components: [Collector] + oss: false +- name: Cerbos JS SDK + url: https://cerbos.dev/ + docsUrl: https://github.com/cerbos/cerbos-sdk-javascript/tree/main/packages/opentelemetry + components: [JavaScript] + oss: true diff --git a/data/ecosystem/vendors.yaml b/data/ecosystem/vendors.yaml index bec1dd9a2692..537c89e14aec 100644 --- a/data/ecosystem/vendors.yaml +++ b/data/ecosystem/vendors.yaml @@ -272,13 +272,6 @@ contact: '' oss: true commercial: false -- name: ThousandEyes (Cisco) - distribution: false - nativeOTLP: true - url: 'https://docs.thousandeyes.com/product-documentation/api/opentelemetry' - contact: '' - oss: false - commercial: true - name: Traceloop distribution: false nativeOTLP: true diff --git a/layouts/shortcodes/ecosystem/integrations-table.md b/layouts/shortcodes/ecosystem/integrations-table.md index 8e6c138214da..d1d7e053e0b1 100644 --- a/layouts/shortcodes/ecosystem/integrations-table.md +++ b/layouts/shortcodes/ecosystem/integrations-table.md @@ -1,8 +1,9 @@ -{{ $data := sort $.Site.Data.ecosystem.integrations "name" -}} -Name[^1] | Components | Learn more ------------- | ---------- | ---------- + +{{ $data := sort (sort $.Site.Data.ecosystem.integrations "name") "oss" "desc" -}} +Name[^1] | OSS | Components | Learn more +------------ | --- | ---------- | ---------- {{- range $data }} -[{{ .name }}]({{ .url }}) | {{ delimit (sort .components) ", " }} | [{{ replace .docsUrl "https://" "" }}]({{ .docsUrl }}) +[{{ .name }}]({{ .url }}) | {{- cond .oss "Yes" "No" }} | {{ delimit (sort .components) ", " }} | [{{ replace .docsUrl "https://" "" }}]({{ .docsUrl }}) {{- end }} [^1]: Listed alphabetically diff --git a/static/refcache.json b/static/refcache.json index 1e17f62df126..447c3c7affc9 100644 --- a/static/refcache.json +++ b/static/refcache.json @@ -47,6 +47,10 @@ "StatusCode": 200, "LastSeen": "2023-06-29T18:39:21.434606-04:00" }, + "http://www.konghq.com/": { + "StatusCode": 206, + "LastSeen": "2023-09-15T16:58:35.304923+02:00" + }, "http://www.watersprings.org/pub/id/draft-moriarty-acme-client-01.html": { "StatusCode": 206, "LastSeen": "2023-06-28T13:37:47.265343-04:00" @@ -203,6 +207,10 @@ "StatusCode": 200, "LastSeen": "2023-06-29T13:38:37.508148-04:00" }, + "https://cerbos.dev/": { + "StatusCode": 206, + "LastSeen": "2023-09-15T16:58:31.234644+02:00" + }, "https://cert-manager.io/": { "StatusCode": 206, "LastSeen": "2023-06-29T13:45:46.681919-04:00" @@ -555,6 +563,10 @@ "StatusCode": 200, "LastSeen": "2023-06-29T16:08:06.985321-04:00" }, + "https://developer.cisco.com/docs/nso/#!observability-exporter/": { + "StatusCode": 206, + "LastSeen": "2023-09-15T16:58:33.549843+02:00" + }, "https://developer.confluent.io/learn-kafka/apache-kafka/topics/": { "StatusCode": 206, "LastSeen": "2023-06-01T15:55:24.471079-04:00" @@ -951,6 +963,10 @@ "StatusCode": 200, "LastSeen": "2023-08-31T11:09:01.973245767Z" }, + "https://docs.konghq.com/hub/kong-inc/opentelemetry/": { + "StatusCode": 206, + "LastSeen": "2023-09-15T16:58:35.759747+02:00" + }, "https://docs.locust.io/en/stable/writing-a-locustfile.html": { "StatusCode": 200, "LastSeen": "2023-06-29T15:47:17.793642-04:00" @@ -2175,6 +2191,10 @@ "StatusCode": 200, "LastSeen": "2023-06-30T09:32:17.878463-04:00" }, + "https://github.com/nginxinc/nginx-otel": { + "StatusCode": 200, + "LastSeen": "2023-09-15T16:58:32.138615+02:00" + }, "https://github.com/nhatthm/otelsql": { "StatusCode": 200, "LastSeen": "2023-06-30T08:32:54.594272-04:00" @@ -4059,10 +4079,18 @@ "StatusCode": 206, "LastSeen": "2023-06-29T18:38:54.51211-04:00" }, + "https://nextjs.org/docs/app/building-your-application/optimizing/open-telemetry": { + "StatusCode": 206, + "LastSeen": "2023-09-15T16:58:31.662231+02:00" + }, "https://nextjs.org/learn/foundations/how-nextjs-works/rendering": { "StatusCode": 206, "LastSeen": "2023-06-29T18:51:55.377168-04:00" }, + "https://nginx.org/": { + "StatusCode": 206, + "LastSeen": "2023-09-15T17:00:40.902027+02:00" + }, "https://nodejs.org/api/async_context.html#async_context_class_asynclocalstorage": { "StatusCode": 200, "LastSeen": "2023-06-29T18:46:34.973912-04:00" @@ -4975,6 +5003,10 @@ "StatusCode": 200, "LastSeen": "2023-06-30T16:24:29.109001-04:00" }, + "https://www.cisco.com/c/en/us/products/cloud-systems-management/network-services-orchestrator/index.html": { + "StatusCode": 200, + "LastSeen": "2023-09-15T16:58:32.417789+02:00" + }, "https://www.cloudscaleinc.com": { "StatusCode": 200, "LastSeen": "2023-06-30T16:24:41.542459-04:00" @@ -5691,6 +5723,10 @@ "StatusCode": 200, "LastSeen": "2023-06-30T09:18:22.897316-04:00" }, + "https://www.thousandeyes.com/": { + "StatusCode": 200, + "LastSeen": "2023-09-15T16:58:35.892267+02:00" + }, "https://www.timescale.com/promscale": { "StatusCode": 206, "LastSeen": "2023-06-29T18:37:07.176446-04:00" From 51af4732aa64cbf72717cd07df40fe91a6c85b34 Mon Sep 17 00:00:00 2001 From: svrnm Date: Fri, 15 Sep 2023 17:40:50 +0200 Subject: [PATCH 2/7] Include tyk Signed-off-by: svrnm --- data/ecosystem/integrations.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/data/ecosystem/integrations.yaml b/data/ecosystem/integrations.yaml index 2b674d9732ee..966426fb60a8 100644 --- a/data/ecosystem/integrations.yaml +++ b/data/ecosystem/integrations.yaml @@ -69,3 +69,7 @@ docsUrl: https://github.com/cerbos/cerbos-sdk-javascript/tree/main/packages/opentelemetry components: [JavaScript] oss: true +- name: Tyk API Gateway + docsUrl: https://tyk.io/docs/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/ + components: [Go] + oss: true \ No newline at end of file From 96b5b8e81b769963499f02b5eb6d4ac2f54dfc78 Mon Sep 17 00:00:00 2001 From: svrnm Date: Wed, 20 Sep 2023 10:46:03 +0200 Subject: [PATCH 3/7] Fixes Signed-off-by: svrnm --- content/en/docs/what-is-opentelemetry.md | 2 +- data/ecosystem/integrations.yaml | 3 ++- static/refcache.json | 8 ++++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/content/en/docs/what-is-opentelemetry.md b/content/en/docs/what-is-opentelemetry.md index c7c7338c6a6d..490d7fe00162 100644 --- a/content/en/docs/what-is-opentelemetry.md +++ b/content/en/docs/what-is-opentelemetry.md @@ -39,7 +39,7 @@ OpenTelemetry consists of the following major components: - Various other tools, such as the [OpenTelemetry Operator for Kubernetes](/docs/kubernetes/operator/) -OpenTelemetry is compatible with a wide variety of open source +OpenTelemetry is compatible with a wide variety of [ecosystem integrations](/ecosystem/integrations/). OpenTelemetry is supported by a vast number of [vendors](/ecosystem/vendors/), diff --git a/data/ecosystem/integrations.yaml b/data/ecosystem/integrations.yaml index 966426fb60a8..c0dfce2d85b3 100644 --- a/data/ecosystem/integrations.yaml +++ b/data/ecosystem/integrations.yaml @@ -70,6 +70,7 @@ components: [JavaScript] oss: true - name: Tyk API Gateway + url: https://tyk.io docsUrl: https://tyk.io/docs/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/ components: [Go] - oss: true \ No newline at end of file + oss: true diff --git a/static/refcache.json b/static/refcache.json index d41896c7741c..03c5c52d7f93 100644 --- a/static/refcache.json +++ b/static/refcache.json @@ -4903,6 +4903,14 @@ "StatusCode": 200, "LastSeen": "2023-06-30T16:27:21.65157-04:00" }, + "https://tyk.io": { + "StatusCode": 206, + "LastSeen": "2023-09-20T10:45:05.852778+02:00" + }, + "https://tyk.io/docs/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/": { + "StatusCode": 206, + "LastSeen": "2023-09-19T18:15:55.842511+02:00" + }, "https://ucum.org/ucum.html#para-curly": { "StatusCode": 200, "LastSeen": "2023-06-29T18:39:26.73908-04:00" From 6ba9f78dc88fbdda64a65233ec6ca42419c99b50 Mon Sep 17 00:00:00 2001 From: Severin Neumann Date: Wed, 20 Sep 2023 12:15:36 +0200 Subject: [PATCH 4/7] Apply suggestions from code review Co-authored-by: Fabrizio Ferri-Benedetti --- content/en/ecosystem/integrations.md | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/content/en/ecosystem/integrations.md b/content/en/ecosystem/integrations.md index 19a56adfa601..75c902870192 100644 --- a/content/en/ecosystem/integrations.md +++ b/content/en/ecosystem/integrations.md @@ -1,21 +1,19 @@ --- title: Integrations description: - Libraries, services and apps with first-party support of OpenTelemetry. + Libraries, services, and apps with first-party support for OpenTelemetry. aliases: [/integrations] --- -OpenTelemetry's mission is +The mission of OpenTelemetry is [to enable effective observability by making high-quality, portable telemetry ubiquitous](/community/mission/). -This means, that we not only want you to get observability for the applications -you develop, but that observability should be built in to all the software you -use! - -On this page we showcase a non-exhaustive list of libraries, services and apps, -that provide you with easy-to-use observability powered by OpenTelemetry. Those -libraries, services and apps have either integrated OpenTelemetry APIs & SDKs -directly for **native** out of the box telemetry or they provide a first-party -plugin that nicely fits into their own extensibility ecosystem. +In other words, observability should be built in into the software +you develop. + +The following list contains a sample of libraries, services, and apps +that have either integrated OpenTelemetry APIs and SDKs directly for +native telemetry or provide a first-party plugin that fits into their own +extensibility ecosystem. {{% ecosystem/integrations-table %}} From 08bf808f249af06e2e7f7be000942206403a3e9a Mon Sep 17 00:00:00 2001 From: Severin Neumann Date: Wed, 20 Sep 2023 12:16:02 +0200 Subject: [PATCH 5/7] Apply suggestions from code review --- content/en/docs/what-is-opentelemetry.md | 2 +- content/en/ecosystem/integrations.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/content/en/docs/what-is-opentelemetry.md b/content/en/docs/what-is-opentelemetry.md index 490d7fe00162..272d3027c081 100644 --- a/content/en/docs/what-is-opentelemetry.md +++ b/content/en/docs/what-is-opentelemetry.md @@ -42,7 +42,7 @@ OpenTelemetry consists of the following major components: OpenTelemetry is compatible with a wide variety of [ecosystem integrations](/ecosystem/integrations/). -OpenTelemetry is supported by a vast number of [vendors](/ecosystem/vendors/), +OpenTelemetry is supported by 40+ [vendors](/ecosystem/vendors/), many of whom provide commercial support for OpenTelemetry and contribute to the project directly. diff --git a/content/en/ecosystem/integrations.md b/content/en/ecosystem/integrations.md index 75c902870192..58ad8b68c5f7 100644 --- a/content/en/ecosystem/integrations.md +++ b/content/en/ecosystem/integrations.md @@ -29,12 +29,12 @@ The entry must include the following: {{% alert title="Note" color="info" %}} If you provide external integration of OpenTelemetry for any kind of library, -service, or app, then [add it to the registry](/ecosystem/registry/adding). +service, or app, then [consider adding it to the registry](/ecosystem/registry/adding). If you adopt OpenTelemetry for Observability as an end user and do not provide any kind of services around OpenTelemetry, see [Adopters](/ecosystem/adopters). -If you provide a solution that consumes OpenTelemetry to offer Observability to +If you provide a solution that consumes OpenTelemetry to offer observability to end users, see [Vendors](/ecosystem/vendors). {{% /alert %}} From 28a01f8e86674abda7b3012033bc0f2ad639777a Mon Sep 17 00:00:00 2001 From: svrnm Date: Wed, 20 Sep 2023 12:48:14 +0200 Subject: [PATCH 6/7] fix format Signed-off-by: svrnm --- content/en/docs/what-is-opentelemetry.md | 6 +++--- content/en/ecosystem/integrations.md | 13 ++++++------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/content/en/docs/what-is-opentelemetry.md b/content/en/docs/what-is-opentelemetry.md index 272d3027c081..c878c5f29f5b 100644 --- a/content/en/docs/what-is-opentelemetry.md +++ b/content/en/docs/what-is-opentelemetry.md @@ -42,9 +42,9 @@ OpenTelemetry consists of the following major components: OpenTelemetry is compatible with a wide variety of [ecosystem integrations](/ecosystem/integrations/). -OpenTelemetry is supported by 40+ [vendors](/ecosystem/vendors/), -many of whom provide commercial support for OpenTelemetry and contribute to the -project directly. +OpenTelemetry is supported by 40+ [vendors](/ecosystem/vendors/), many of whom +provide commercial support for OpenTelemetry and contribute to the project +directly. ## Extensibility diff --git a/content/en/ecosystem/integrations.md b/content/en/ecosystem/integrations.md index 58ad8b68c5f7..2d2b812abb6e 100644 --- a/content/en/ecosystem/integrations.md +++ b/content/en/ecosystem/integrations.md @@ -7,13 +7,11 @@ aliases: [/integrations] The mission of OpenTelemetry is [to enable effective observability by making high-quality, portable telemetry ubiquitous](/community/mission/). -In other words, observability should be built in into the software -you develop. +In other words, observability should be built in into the software you develop. -The following list contains a sample of libraries, services, and apps -that have either integrated OpenTelemetry APIs and SDKs directly for -native telemetry or provide a first-party plugin that fits into their own -extensibility ecosystem. +The following list contains a sample of libraries, services, and apps that have +either integrated OpenTelemetry APIs and SDKs directly for native telemetry or +provide a first-party plugin that fits into their own extensibility ecosystem. {{% ecosystem/integrations-table %}} @@ -29,7 +27,8 @@ The entry must include the following: {{% alert title="Note" color="info" %}} If you provide external integration of OpenTelemetry for any kind of library, -service, or app, then [consider adding it to the registry](/ecosystem/registry/adding). +service, or app, then +[consider adding it to the registry](/ecosystem/registry/adding). If you adopt OpenTelemetry for Observability as an end user and do not provide any kind of services around OpenTelemetry, see [Adopters](/ecosystem/adopters). From 5b46734114ada96c3c8bd50839ae8e8101bc5533 Mon Sep 17 00:00:00 2001 From: svrnm Date: Wed, 20 Sep 2023 16:41:52 +0200 Subject: [PATCH 7/7] add docs update Signed-off-by: svrnm --- content/en/docs/_index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/content/en/docs/_index.md b/content/en/docs/_index.md index 36e656a95609..7a317836cd94 100644 --- a/content/en/docs/_index.md +++ b/content/en/docs/_index.md @@ -11,6 +11,8 @@ for instrumenting, generating, collecting, and exporting telemetry data such as [traces](/docs/concepts/signals/traces/), [metrics](/docs/concepts/signals/metrics/), [logs](/docs/concepts/signals/logs/). As an industry-standard, it is -[natively supported by a number of vendors](/ecosystem/vendors/). +[supported by 40+ observability vendors](/ecosystem/vendors/), integrated by +many [libraries, services and apps](/ecosystem/integrations) and adopted by a +[number of end-users](/ecosystem/adopters). ![OpenTelemetry Reference Architecture](/img/otel-diagram.svg)