Release v0.20.0#1837
Merged
MrAlias merged 4 commits intoopen-telemetry:mainfrom Apr 23, 2021
Merged
Conversation
Codecov Report
@@ Coverage Diff @@
## main #1837 +/- ##
=====================================
Coverage 78.5% 78.6%
=====================================
Files 137 137
Lines 7288 7288
=====================================
+ Hits 5728 5729 +1
+ Misses 1316 1315 -1
Partials 244 244
|
Aneurysm9
approved these changes
Apr 23, 2021
dashpole
approved these changes
Apr 23, 2021
paivagustavo
approved these changes
Apr 23, 2021
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Added
NewExportPipelineandInstallNewPipeline, setup and install the exporter in tracing and metrics pipelines. (add NewExportPipeline and InstallNewPipeline for otlp #1373)OTEL_EXPORTER_JAEGER_AGENT_HOST,OTEL_EXPORTER_JAEGER_AGENT_PORTThese environment variables can be used to override Jaeger agent hostname and port (Update Jaeger environment variables #1752)
ExportTimeoutwas added to batch span processor. (AddExportTimeoutoption to batch span processor #1755)trace.TraceFlagsis now a defined type overbyteandWithSampled(bool) TraceFlagsandIsSampled() boolmethods have been added to it. (Make TraceFlags spec-compliant #1770)EventandLinkstruct types from thego.opentelemetry.io/otelpackage now include aDroppedAttributeCountfield to record the number of attributes that were not recorded due to configured limits being reached. (Record links/events attribute drops independently #1771)OnEndandForceFlushpostShutdown. (Add test to check bsp ignoresOnEndandForceFlushpost Shutdown` #1772)OTEL_RESOURCE_ATTRIBUTESenvironment variable and merge them with theresource.Defaultresource as well as resources provided to theTracerProviderand metricController. (Fix default merging of resource attributes from environment variable #1785)WithOSTyperesource configuration option to set OS (Operating System) type resource attribute (os.type). (OS and Process resource detectors #1788)WithProcess*resource configuration options to set Process resource attributes. (OS and Process resource detectors #1788)process.pidprocess.executable.nameprocess.executable.pathprocess.command_argsprocess.ownerprocess.runtime.nameprocess.runtime.versionprocess.runtime.descriptionk8s.node.nameandk8s.node.uidattribute keys to thesemconvpackage. (Add k8s.node.name and k8s.node.uid to semconv #1789)OTEL_EXPORTER_OTLP_ENDPOINTOTEL_EXPORTER_OTLP_TRACES_ENDPOINTOTEL_EXPORTER_OTLP_METRICS_ENDPOINTOTEL_EXPORTER_OTLP_HEADERSOTEL_EXPORTER_OTLP_TRACES_HEADERSOTEL_EXPORTER_OTLP_METRICS_HEADERSOTEL_EXPORTER_OTLP_COMPRESSIONOTEL_EXPORTER_OTLP_TRACES_COMPRESSIONOTEL_EXPORTER_OTLP_METRICS_COMPRESSIONOTEL_EXPORTER_OTLP_TIMEOUTOTEL_EXPORTER_OTLP_TRACES_TIMEOUTOTEL_EXPORTER_OTLP_METRICS_TIMEOUTOTEL_EXPORTER_OTLP_CERTIFICATEOTEL_EXPORTER_OTLP_TRACES_CERTIFICATEOTEL_EXPORTER_OTLP_METRICS_CERTIFICATEotlpgrpc.WithTimeoutoption for configuring timeout to the otlp/gRPC exporter. (Adds support for timeout on the otlp/gRPC exporter #1821)Fixed
Span.IsRecordingimplementation fromgo.opentelemetry.io/otel/sdk/tracealways returns false when not being sampled. (Fix span IsRecording when not sampling #1750)This means it uses the correct tag keys (
"otel.status_code","otel.status_description") and does not set the status message as a tag unless it is set on the span. (Fix Jaeger span status reporting and unify tag keys #1761)"event"key for a tag.Additionally, this tag is overridden, as specified in the OTel specification, if the event contains an attribute with that key. (Update precedence of event name in Jaeger exporter #1768)
Changed
RecordErrornow records anexceptionevent to comply with the semantic convention specification. (Adds semantic conventions for exceptions #1492)go.opentelemetry.io/proto/otlp. (Migrate to using go.opentelemetry.io/proto/otlp #1713)github.com/gogo/protobuftogoogle.golang.org/protobufto matchgo.opentelemetry.io/proto/otlp. (Migrate to using go.opentelemetry.io/proto/otlp #1713)context.Contextusing its SpanContext is unified to store just the current Span.The Span's SpanContext can now self-identify as being remote or not.
This means that
"go.opentelemetry.io/otel/trace".ContextWithRemoteSpanContextwill now overwrite any existing current Span, not just existing remote Spans, and make it the current Span in acontext.Context. (Store current Span instead of local and remote SpanContext in context.Context #1731)"go.opentelemetry.io/otel/export/trace".SpanSnapshotis unified in a newParentfield.The existing
ParentSpanIDandHasRemoteParentfields are removed in favor of this. (Update SpanSnapshot to use parent SpanContext #1748)ParentContextfield of the"go.opentelemetry.io/otel/sdk/trace".SamplingParametersis updated to hold acontext.Contextcontaining the parent span.This changes it to make
SamplingParametersconform with the OpenTelemetry specification. (Update SamplingParameters #1749)JAEGER_ENDPOINT,JAEGER_USER,JAEGER_PASSWORDto
OTEL_EXPORTER_JAEGER_ENDPOINT,OTEL_EXPORTER_JAEGER_USER,OTEL_EXPORTER_JAEGER_PASSWORDin compliance with OTel spec (Update Jaeger environment variables #1752)
BatchSpanProcessor.ForceFlushto abort after timeout/cancellation. (Modify ForceFlush to abort after timeout/cancellation #1757)DroppedAttributeCountfield of theSpanin thego.opentelemetry.io/otelpackage now only represents the number of attributes dropped for the span itself.It no longer is a conglomerate of itself, events, and link attributes that have been dropped. (Record links/events attribute drops independently #1771)
ExportSpansin Jaeger Exporter honor context deadline. (Make ExportSpans for Jaeger Exporter honor deadline #1773)go.opentelemetry.io/otel/sdk/export/tracepackage is merged into thego.opentelemetry.io/otel/sdk/tracepackage. (Merge sdk/export/trace into sdk/trace #1778)TracerProviderimplementation and enable the shutdown of the exporter. (Changes stdout to expose the*sdktrace.TracerProvider#1800)InstallNewPipelineandNewExportPipeline) with theTracerProviderimplementation they create.This enables the caller to shutdown and flush using the related
TracerProvidermethods. (Update Jaeger exporter convenience functions #1822)http://localhost:14250, for the collector. ( Update Default Value for Jaeger Exporter Endpoint #1824)WithCollectorEndpointin the Jaeger exporter to no longer accept an endpoint as an argument.The endpoint can be passed with the
CollectorEndpointOptionusing theWithEndpointfunction or by setting theOTEL_EXPORTER_JAEGER_ENDPOINTenvironment variable value appropriately. ( Update Default Value for Jaeger Exporter Endpoint #1824)BatchSpanProcessorfor this functionality. (Remove bundler from Jaeger exporter #1830)NewRawExporter,NewExportPipeline, andInstallNewPipeline) no longer accept the removedOptiontype as a variadic argument. (Remove bundler from Jaeger exporter #1830)Removed
JAEGER_SERVICE_NAME,JAEGER_DISABLED,JAEGER_TAGSThese environment variables will no longer be used to override values of the Jaeger exporter (Update Jaeger environment variables #1752)
Spaningo.opentelemetry.io/otel/sdk/tracethat is configured to be a new root.This is unspecified behavior that the OpenTelemetry community plans to standardize in the future.
To prevent backwards incompatible changes when it is specified, these links are removed. (Remove links on NewRoot spans #1726)
Because of this
"go.opentelemetry.io/otel/trace".RemoteSpanContextFromContextis removed as it is no longer needed.Instead,
"go.opentelemetry.io/otel/trace".SpanContextFromContexcan be used to return the current Span.If needed, that Span's
SpanContext.IsRemote()can then be used to determine if it is remote or not. (Store current Span instead of local and remote SpanContext in context.Context #1731)HasRemoteParentfield of the"go.opentelemetry.io/otel/sdk/trace".SamplingParametersis removed.This field is redundant to the information returned from the
Remotemethod of theSpanContextheld in theParentContextfield. (Update SamplingParameters #1749)trace.FlagsDebugandtrace.FlagsDeferredconstants have been removed and will be localized to the B3 propagator. (Make TraceFlags spec-compliant #1770)Processconfiguration,WithProcessFromEnvandProcessFromEnv, and type from the Jaeger exporter package.The information that could be configured in the
Processstruct should be configured in aResourceinstead. (Remove process config for Jaeger exporter #1776, Remove the abandoned Process struct in Jaeger exporter #1804)WithDisabledoption from the Jaeger exporter.To disable the exporter unregister it from the
TracerProvideror use a no-operationTracerProvider. (Remove the WithDisabled option from Jaeger exporter #1806)CollectorEndpointFromEnvandWithCollectorEndpointOptionFromEnvfrom the Jaeger exporter.These functions for retrieving specific environment variable values are redundant of other internal functions and
are not intended for end user use. ( Update Default Value for Jaeger Exporter Endpoint #1824)
WithSDKOptionsOption.This option was used to set SDK options for the exporter creation convenience functions.
These functions are provided as a way to easily setup or install the exporter with what are deemed reasonable SDK settings for common use cases.
If the SDK needs to be configured differently, the
NewRawExporterfunction and direct setup of the SDK with the desired settings should be used. (Remove the WithSDKOptions from the Jaeger exporter #1825)WithBufferMaxCountandWithBatchMaxCountOptions from the Jaeger exporter are removed.The exporter no longer batches exports, instead relying on the SDK's
BatchSpanProcessorfor this functionality. (Remove bundler from Jaeger exporter #1830)Optiontype is removed.The type is no longer used by the exporter to configure anything.
All of the previous configuration these options provided were duplicates of SDK configuration.
They have all been removed in favor of using the SDK configuration and focuses the exporter configuration to be only about the endpoints it will send telemetry to. (Remove bundler from Jaeger exporter #1830)