// // Copyright (c) 2022 Contributors to the Eclipse Foundation // // See the NOTICE file(s) distributed with this work for additional // information regarding copyright ownership. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. //
= MicroProfile Telemetry
This specification is to adopt https://opentelemetry.io/[OpenTelemetry] from CNCF to allow MicroProfile Applications benefit from OpenTelemetry and enable Jakarta RESTful Web Services automatically being traced if configured.
== OpenTracing moves to OpenTelemetry With the merge of OpenTracing and OpenCensus, OpenTelemetry holds the future. OpenTelemetry consists of Tracing, Logging, Metrics and Baggage support.
== Structure of this Specification Since OpenTelemetry has three main pillars and an additional one: Tracing, Metrics, Logging and Baggage for additional information, i.e. to link between them.
This specification potentially adopts all three main parts when they are stable in OpenTelemetry. However, since the three parts work together and are released together by OpenTelemetry, it makes sense for this specification to produce one combined specification. TCKs are in a different situation as they varies vastly with the focus on Metrics, Tracing and Logging. Because of this, separate TCK jars will be produced for metrics, tracing and logging.
This top level project specifies a particular version of OpenTelemetry to pull in so that the tracing, metrics and logging can work together.