github open-telemetry/opentelemetry-dotnet 1.0.0-rc2

pre-release3 years ago

OpenTelemetry

  • The following extension methods on ResourceBuilder has been moved from the
    OpenTelemetry namespace to the OpenTelemetry.Resources namespace:
    AddEnvironmentVariableDetector, AddAttributes, AddService, and
    AddTelemetrySdk.
    (#1576)
  • Metrics API/SDK support is in an experimental state and is not recommended for
    production use. All metric APIs have been marked with the Obsolete
    attribute. See
    #1501
    for more information.
    (#1611)
  • Modified SimpleExportProcessor and BatchExportProcessor to abstract classes;
    Added SimpleActivityExportProcessor, SimpleLogRecordExportProcessor,
    BatchActivityExportProcessor, BatchLogRecordExportProcessor; Added the check
    for Activity.Recorded in SimpleActivityExportProcessor and
    BatchActivityExportProcessor
    (#1622)
  • Added check in ActivitySourceAdapter class for root activity if traceid is
    overridden by calling SetParentId
    (#1355)
  • Resource Attributes now accept int, short, and float as values, converting
    them to supported data types (long for int/short, double for float). For
    invalid attributes we now throw an exception instead of logging an error.
    (#1720)
  • Merging "this" resource with an "other" resource now prioritizes the "other"
    resource's attributes in a conflict. We've rectified to follow a recent
    change to the spec. We previously prioritized "this" resource's tags.
    (#1728)
  • BatchExportProcessor will now flush any remaining spans left in a Batch
    after the export operation has completed.
    (#1726)
  • Fixed a bug to allow the Self Diagnostics log file to be opened simutaneously
    by another process in read-only mode for .NET Framework.
    (#1693)
  • Metrics removed as it is not part 1.0.0 release. See issue
    #1501
    for details on Metric release plans.
  • Fix Resource attribute telemetry.sdk.version to have correct file version.

OpenTelemetry.Api

  • In order to align with the
    spec
    the Status (otel.status_code) tag (added on Activity using the SetStatus
    extension) will now be set as the UNSET, OK, or ERROR string
    representation instead of the 0, 1, or 2 integer representation.
    (#1579 &
    #1620)
  • Metrics API/SDK support is in an experimental state and is not recommended for
    production use. All metric APIs have been marked with the Obsolete
    attribute. See
    #1501
    for more information.
    (#1611)
  • Status.WithDescription will now ignore the provided description if the
    Status.StatusCode is anything other than ERROR.
    (#1655)
  • Metrics removed as it is not part 1.0.0 release. See issue
    #1501
    for details on Metric release plans.
  • Relax System.Diagnostics.DiagnosticSource version requirement to allow
    versions >=5.0. Previously only versions up to 6.0 (excluding 6.0) was
    allowed.

OpenTelemetry.Exporter.Console

  • AddConsoleExporter extension method for logs moved from
    OpenTelemetry.Trace namespace to OpenTelemetry.Logs namespace.
    (#1576)

  • Added ConsoleActivityExporter and ConsoleLogExporter. Refactored
    ConsoleExporter to get rid of type specific check in the class
    (#1593)

  • Replaced Debug.WriteLine with Trace.WriteLine to display the logs to the Debug
    window with Release configuration
    (#1719)

OpenTelemetry.Exporter.InMemory

  • AddInMemoryExporter extension method for traces moved from
    OpenTelemetry namespace to OpenTelemetry.Trace namespace.
    (#1576)
  • AddInMemoryExporter extension method for logs moved from
    Microsoft.Extensions.Logging namespace to OpenTelemetry.Logs namespace.
    (#1576)

OpenTelemetry.Exporter.Jaeger

  • Changed JaegerExporter class and constructor from internal to public.
    (#1612)

  • In JaegerExporterOptions: Exporter options now include a switch for Batch vs
    Simple exporter, and settings for batch exporting properties.

  • Jaeger will now set the error tag when otel.status_code is set to ERROR.
    (#1579 &
    #1620)

  • Jaeger will no longer send the otel.status_code tag if the value is UNSET.
    (#1609 &
    #1620)

  • Span Event.Name will now be populated as the event field on Jaeger Logs
    instead of message.
    (#1609)

  • JaegerExporter batch format has changed to be compliant with the spec. This
    may impact the way spans are displayed in Jaeger UI.
    (#1732)

OpenTelemetry.Exporter.OpenTelemetryProtocol

  • Changed OltpTraceExporter class and constructor from internal to public.
    (#1612)

  • In OtlpExporterOptions.cs: Exporter options now include a switch for
    Batch vs Simple exporter, and settings for batch exporting properties.

  • Introduce a netstandard2.1 build enabling the exporter to use the
    gRPC for .NET library instead of the
    gRPC for C# library
    for .NET Core 3.0+ applications. This required some breaking changes to the
    OtlpExporterOptions.
    (#1662)

OpenTelemetry.Exporter.Zipkin

  • Changed ZipkinExporter class and constructor from internal to public.
    (#1612)

  • Zipkin will now set the error tag to the Status.Description value or an
    empty string when Status.StatusCode (otel.status_code tag) is set to
    ERROR.
    (#1579,
    #1620, &
    #1655)

  • Zipkin will no longer send the otel.status_code tag if the value is UNSET.
    (#1609 &
    #1620)

  • Zipkin bool tag values will now be sent as true/false instead of
    True/False.
    (#1609)

  • Span tags will no longer be populated with Resource Attributes.
    (#1663)

  • Spans will no longer be held in memory indefinitely when ZipkinExporter
    cannot connect to the configured endpoint.
    (#1726)

OpenTelemetry.Exporter.ZPages

OpenTelemetry.Extensions.Hosting

OpenTelemetry.Instrumentation.AspNet

OpenTelemetry.Instrumentation.AspNetCore

OpenTelemetry.Instrumentation.GrpcNetClient

OpenTelemetry.Instrumentation.Http

  • otel.status_description tag will no longer be set to the http status
    description/reason phrase for outgoing http spans.
    (#1579)

  • Moved the DiagnosticListener filtering logic from HttpClientInstrumentation
    ctor to OnStartActivity method of HttpHandlerDiagnosticListener.cs; Updated
    the logic of OnStartActivity to inject propagation data into Headers for
    filtered out events as well.
    (#1707)

OpenTelemetry.Instrumentation.SqlClient

  • Microsoft.Data.SqlClient v2.0.0 and higher is now properly instrumented
    on .NET Framework.
    (#1599)
  • SqlClientInstrumentationOptions API changes: SetStoredProcedureCommandName
    and SetTextCommandContent have been renamed to
    SetDbStatementForStoredProcedure and SetDbStatementForText. They are now
    only available on .NET Core. On .NET Framework they are replaced by a single
    SetDbStatement property.
  • On .NET Framework, "db.statement_type" attribute is no longer set for
    activities created by the instrumentation.
  • New setting on SqlClientInstrumentationOptions on .NET Core: RecordException
    can be set to instruct the instrumentation to record SqlExceptions as Activity
    events.
    (#1592)

OpenTelemetry.Instrumentation.StackExchangeRedis

OpenTelemetry.Shims.OpenTracing

  • Made the following shim classes internal: ScopeManagerShim,
    SpanBuilderShim, SpanContextShim, SpanShim.
    (#1619)

Don't miss a new opentelemetry-dotnet release

NewReleases is sending notifications on new releases.