Skip to content

Releases: open-telemetry/opentelemetry-python

opentelemetry v0.15b0

02 Nov 17:14
725655a
Compare
Choose a tag to compare

opentelemetry-api

💥 Breaking Changes

  • Updating status codes to adhere to spec (#1282)

🚀 Enhancements

  • Add keys method to TextMap propagator Getter (#1196)
  • Fix ConsoleSpanExporter exception (#1246)
  • Updating limits for attributes, events, links (#1249)

opentelemetry-sdk

💥 Breaking Changes

  • Updating status codes to adhere to specs (#1282)
  • Split up metric instrument constructors (#1254)

🚀 Enhancements

  • Allow None in sequence attributes values (#998)
  • Set initial checkpoint timestamp in aggregators (#1237)
  • Span.is_recording() returns false after span has ended (#1289)
  • Fix b3 propagator entrypoint (#1265)
  • Samplers to accept parent Context (#1267)
  • Add keys method to TextMap propagator Getter (#1196)
  • Make SpanProcessor.on_start accept parent Context (#1251)
  • Remove TracerProvider coupling from Tracer init (#1295)

opentelemetry-exporter-datadog

🚀 Enhancements

  • Make SpanProcessor.on_start accept parent Context (#1251)

opentelemetry-exporter-jaeger

🚀 Enhancements

  • Add support for Jaeger Span Exporter configuration by environment variables and change JaegerSpanExporter constructor parameters (#1114)

opentelemetry-exporter-otlp

🚀 Enhancements

  • Add Env variables in OTLP exporter (#1101)
  • Do not use bound instruments in OTLP exporter (#1237)

opentelemetry-instrumentation-django

🚀 Enhancements

  • Django instrumentation is now enabled by default but can be disabled by setting OTEL_PYTHON_DJANGO_INSTRUMENT to False (#1239)
  • Span name resolves correctly for paths that also require a query parameter to match (#1309)
  • Added capture of http.route (#1226)
  • Add support for tracking http metrics (#1230)
  • Record span status and http.status_code attribute on exception (#1257)

opentelemetry-instrumentation-flask

🚀 Enhancements

  • Use url.rule instead of request.endpoint for span name (#1260)

opentelemetry-instrumentation-grpc

🚀 Enhancements

  • Rewrite gRPC server interceptor (#1171)

opentelemetry-instrumentation-requests

🚀 Enhancements

  • Add support for tracking http metrics (#1116)

opentelemetry v0.14b0

13 Oct 18:02
7c361bd
Compare
Choose a tag to compare

opentelemetry-api

💥 Breaking Changes

  • Update baggage propagation header (#1194)
  • Parent is now always passed in via Context, intead of Span or SpanContext (#1146)

🚀 Enhancements

  • Add support for OTEL_PROPAGATORS (#1123)
  • Store ints as ints in the global Configuration object
    (#1118)
  • Make instances of SpanContext immutable (#1134)
  • Allow for Custom Trace and Span IDs Generation - IdsGenerator for TracerProvider (#1153)

opentelemetry-sdk

💥 Breaking Changes

  • Update sampling result names (#1128)
  • Renaming metrics Batcher to Processor (#1203)
  • Parent is now always passed in via Context, intead of Span or SpanContext (#1146)

🚀 Enhancements

  • Add timestamps to aggregators (#1199)
  • Add Global Error Handler (#1080)
  • Add support for OTEL_BSP_MAX_QUEUE_SIZE, OTEL_BSP_SCHEDULE_DELAY_MILLIS, OTEL_BSP_MAX_EXPORT_BATCH_SIZE and OTEL_BSP_EXPORT_TIMEOUT_MILLIS environment variables (#1105)
  • Allow for Custom Trace and Span IDs Generation - IdsGenerator for TracerProvider (#1153)
  • Event attributes are now immutable (#1195)
  • Protect access to Span implementation (#1188)
  • start_as_current_span and use_span can now optionally auto-record any exceptions raised inside the context manager. (#1162)
  • Adding Resource to MeterRecord (#1209)

opentelemetry-exporter-datadog

🚀 Enhancements

  • Add support for span resource labels and service name (#1074)

opentelemetry-exporter-otlp

💥 Breaking Changes

  • Update OpenTelemetry protos to v0.5.0 (#1143)

🚀 Enhancements

  • Add support for span resource labels and service name (#1074)
  • Add timestamps to OTLP exporter (#1199)

opentelemetry-exporter-zipkin

🚀 Enhancements

  • Add support for span resource labels and service name (#1074)
  • Zipkin exporter now accepts a max_tag_value_length attribute to customize the maximum allowed size a tag value can have. (#1151)

opentelemetry-instrumentation-celery

🚀 Enhancements

  • Span operation names now include the task type. (#1135)
  • Added automatic context propagation. (#1135)

opentelemetry-instrumentation-django

🚀 Enhancements

  • Changed span name extraction from request to comply semantic convention (#992)
  • Added support for OTEL_PYTHON_DJANGO_TRACED_REQUEST_ATTRS (#1154)

opentelemetry-instrumentation-falcon

🚀 Enhancements

  • Added support for OTEL_PYTHON_FALCON_TRACED_REQUEST_ATTRS (#1158)

opentelemetry-instrumentation-pymysql

🚀 Enhancements

  • Bumped version from 0.9.3 to 0.10.1 (#1228)

opentelemetry-instrumentation-system-metrics

🐛 Bug Fixes

  • Fix issue when specific metrics are not available in certain OS (#1207)

opentelemetry-instrumentation-tornado

🚀 Enhancements

  • Added support for OTEL_PYTHON_TORNADO_TRACED_REQUEST_ATTRS (#1178)

opentelemetry-instrumentation

🚀 Enhancements

  • Add support for http metrics (#1116)

🐛 Bug Fixes

  • Fixed boostrap command to correctly install opentelemetry-instrumentation-falcon instead of opentelemetry-instrumentation-flask (#1138)

opentelemetry v0.13b0

17 Sep 15:38
6c8659b
Compare
Choose a tag to compare

The 0.13b0 version officially drops support for Python 3.4 (#1099)

opentelemetry-api

💥 Breaking Changes

  • Refactor SpanContext.is_valid from a method to a data attribute (#1005)
  • Moved samplers from API to SDK (#1023)
  • Change is_recording_events to is_recording (#1034)
  • Remove lazy Event and Link API from Span interface (#1045)
  • Rename CorrelationContext to Baggage (#1060)
  • Rename HTTPTextFormat to TextMapPropagator. This change also updates get_global_httptextformat and set_global_httptextformat to get_global_textmap and set_global_textmap (#1085)

🐛 Bug Fixes

  • Change return value type of correlationcontext.get_correlations to immutable MappingProxyType (#1024)
  • Fix api/sdk setup.cfg to include missing python files (#1091)

opentelemetry-sdk

💥 Breaking Changes

  • Moved samplers from API to SDK (#1023)
  • Sampling spec changes (#1034)
  • Remove lazy Event and Link API from Span interface (#1045)
  • Rename Resource labels to attributes (#1082)
  • Rename members of trace.sampling.Decision enum (#1115)

🚀 Enhancements

  • Improve BatchExportSpanProcessor (#1062)
  • Populate resource attributes as per semantic conventions (#1053)

🐛 Bug Fixes

  • Fix api/sdk setup.cfg to include missing python files (#1091)

opentelemetry-exporter-jaeger

🚀 Enhancements

  • Report instrumentation info (#1098)

opentelemetry-exporter-otlp

🚀 Enhancements

  • Add instrumentation info to exported spans (#1095)
  • Add metric OTLP exporter (#835)

opentelemetry-exporter-zipkin

🚀 Enhancements

  • Add support for OTEL_EXPORTER_ZIPKIN_ENDPOINT env var. As part of this change, the configuration of the ZipkinSpanExporter exposes a url argument to replace host_name, port, protocol, endpoint. This brings this implementation inline with other implementations. (#1064)
  • Zipkin exporter report instrumentation info. (#1097)

opentelemetry-instrumentation-aiohttp-client

🚀 Enhancements

  • Updating span name to match semantic conventions (#972)

opentelemetry-instrumentation-dbapi

🐛 Bug Fixes

  • cursors and connections now produce spans when used with context managers (#1028)

opentelemetry-instrumentation-falcon

🚀 Enhancements

  • Initial release. Added instrumentation for Falcon 2.0+

opentelemetry-instrumentation-tornado

🚀 Enhancements

  • Initial release. Supports Tornado 6.x on Python 3.5 and newer

opentelemetry v0.12.0

14 Aug 23:34
6943de7
Compare
Choose a tag to compare

vBeta v12 release.

Update exporter package names

Change package names from "ext" to "exporter" (#953)
opentelemetry-ext-datadog -> opentelemetry-exporter-datadog
opentelemetry-ext-jaeger-> opentelemetry-exporter-jaeger
opentelemetry-ext-opencensusexporter-> opentelemetry-exporter-opencensus
opentelemetry-ext-otlp-> opentelemetry-exporter-otlp
opentelemetry-ext-prometheus-> opentelemetry-exporter-prometheus
opentelemetry-ext-zipkin-> opentelemetry-exporter-zipkin

Update instrumentation package names

Change package names from "ext" to "instrumentation" (#961, #966, #969)
opentelemetry-ext-aiohttp-client-> opentelemetry-instrumentation-aiohttp-client
opentelemetry-ext-asgi-> opentelemetry-instrumentation-asgi
opentelemetry-ext-asyncpg-> opentelemetry-instrumentation-asyncpg
opentelemetry-ext-boto-> opentelemetry-instrumentation-boto
opentelemetry-ext-botocore-> opentelemetry-instrumentation-botocore
opentelemetry-ext-celery-> opentelemetry-instrumentation-celery
opentelemetry-ext-dbapi-> opentelemetry-instrumentation-dbapi
opentelemetry-ext-django-> opentelemetry-instrumentation-django
opentelemetry-ext-elasticsearch-> opentelemetry-instrumentation-elasticsearch
opentelemetry-ext-flask-> opentelemetry-instrumentation-flask
opentelemetry-ext-grpc-> opentelemetry-instrumentation-grpc
opentelemetry-ext-jinja2-> opentelemetry-instrumentation-jinja2
opentelemetry-ext-mysql-> opentelemetry-instrumentation-mysql
opentelemetry-ext-opentracing-shim-> opentelemetry-instrumentation-opentracing-shim
opentelemetry-ext-psycopg2-> opentelemetry-instrumentation-psycopg2
opentelemetry-ext-pymemcache-> opentelemetry-instrumentation-pymemcache
opentelemetry-ext-pymongo-> opentelemetry-instrumentation-pymongo
opentelemetry-ext-pymysql-> opentelemetry-instrumentation-pymysql
opentelemetry-ext-pyramid-> opentelemetry-instrumentation-pyramid
opentelemetry-ext-redis-> opentelemetry-instrumentation-redis
opentelemetry-ext-requests-> opentelemetry-instrumentation-requests
opentelemetry-ext-sqlalchemy-> opentelemetry-instrumentation-sqlalchemy
opentelemetry-ext-sqlite3-> opentelemetry-instrumentation-sqlite3
opentelemetry-ext-system-metrics-> opentelemetry-instrumentation-system-metrics
opentelemetry-ext-wsgi-> opentelemetry-instrumentation-wsgi

opentelemetry-api

  • Update environment variable names, prefix changed from OPENTELEMETRY to OTEL (#904)
  • Stop TracerProvider and MeterProvider from being overridden (#959)

opentelemetry-sdk

  • Changed default Sampler to ParentOrElse(AlwaysOn) (#960)
  • Update environment variable names, prefix changed from OPENTELEMETRY to OTEL (#904)
  • Implement Views in metrics SDK (#596)
  • Update environment variable OTEL_RESOURCE to OTEL_RESOURCE_ATTRIBUTES as per the specification (#973)

opentelemetry-instrumentation-django

  • Update environment variable names, prefix changed from OPENTELEMETRY to OTEL (#904)

opentelemetry-instrumentation-elasticsearch

  • Update environment variable names, prefix changed from OPENTELEMETRY to OTEL (#904)

opentelemetry-instrumentation-flask

  • Update environment variable names, prefix changed from OPENTELEMETRY to OTEL (#904)

opentelemetry-instrumentation-pyramid

  • Update environment variable names, prefix changed from OPENTELEMETRY to OTEL (#904)

opentelemetry-instrumentation-redis

  • Update default SpanKind to SpanKind.CLIENT (#965)

opentelemetry v0.11.0

28 Jul 20:30
f682cf5
Compare
Choose a tag to compare

Beta v11 release.

opentelemetry-api

  • Log a warning when replacing the global Tracer/Meter provider (#856)
  • Return INVALID_SPAN if no TracerProvider set for get_current_span (#751)
  • Rename record_error to record_exception (#927)

opentelemetry-sdk

  • Add support for resources and resource detector (#853)
  • Rename record_error to record_exception (#927)

opentelemetry-ext-asyncpg

  • Shouldn't capture query parameters by default (#854)

opentelemetry-ext-boto

  • bugfix: fails to export spans via jaeger (#866)

opentelemetry-ext-botocore

  • bugfix: fails to export spans via jaeger (#866)

opentelemetry-ext-django

  • Use one general exclude list instead of two (#872)

opentelemetry-ext-flask

  • Use one general exclude list instead of two (#872)

opentelemetry-ext-grpc

  • Add status code to gRPC client spans (896)
  • Add gRPC client and server instrumentors (788)

opentelemetry-ext-jaeger

  • Could not serialize attribute aws.region to tag when exporting via jaeger Serialize tuple type values by coercing them into a string, since Jaeger does not support tuple types. (#865)

opentelemetry-ext-mysql

  • bugfix: Fix auto-instrumentation entry point for mysql (#858)

opentelemetry-ext-otlp

  • Update span exporter to use OpenTelemetry Proto v0.4.0 (#872)

opentelemetry-ext-pyramid

  • Use one general exclude list instead of two (#872)

opentelemetry-ext-wsgi

  • Set span status on wsgi errors (#864)

opentelemetry-instrumentation-aiopg

  • Initial release

opentelemetry-instrumentation-fastapi

  • Initial release (#890)

opentelemetry v0.10.0

23 Jun 22:17
4ede60d
Compare
Choose a tag to compare

Beta v10 release.

opentelemetry-sdk

  • Rename CounterAggregator -> SumAggregator (#816)

opentelemetry-exporter-cloud-monitoring

  • Add ability for exporter to add unique identifier (#841)
  • Added tests to tox coverage files (#804)

opentelemetry-exporter-cloud-trace

  • Add g.co/agent label for Google internal metrics tracking (#833)
  • Adding trouble-shooting tips (#827)
  • Added Cloud Trace context propagation (#819)
  • Added tests to tox coverage files (#804)

opentelemetry-ext-asyncpg

  • Initial Release (#814)

opentelemetry-ext-celery

  • Add instrumentation for Celery (#780)

opentelemetry-ext-elasticsearch

  • Initial release (#747)

opentelemetry-ext-pymemcache

  • Initial release (#772)

opentelemetry-instrumentation-starlette

  • Initial release (#777)

opentelemetry-proto

  • Regenerate proto code and add pyi stubs (#823)

opentelemetry v0.9.0

11 Jun 04:39
8c3de78
Compare
Choose a tag to compare
opentelemetry v0.9.0 Pre-release
Pre-release

Beta v9 release.

docs

  • Fix broken link (#763)

opentelemetry-api

  • Adding trace.get_current_span, Removing Tracer.get_current_span (#552)
  • Rename Measure to ValueRecorder (#761)
  • Rename Observer to ValueObserver (#764)
  • Add SumObserver and UpDownSumObserver in metrics (#789)
  • Implement UpDownCounter instrument (#796)
  • Move stateful from Meter to MeterProvider (#751)

opentelemetry-sdk

  • Adding trace.get_current_span, Removing Tracer.get_current_span (#552)
  • Flush metrics on exit (#749)
  • Make force_flush available on SDK's tracer provider (#594)
  • Rename Measure to ValueRecorder (#761)
  • Rename Observer to ValueObserver (#764)
  • Add SumObserver, UpDownSumObserver and LastValueAggregator in metrics (#789)
  • Implement UpDownCounter instrument (#796)
  • Move stateful & resource from Meter to MeterProvider (#751)
  • Add start_pipeline to MeterProvider (#791)
  • bugfix: byte type attributes are decoded before adding to attributes dict (#775)

opentelemetry-auto-instrumentation -> opentelemetry-instrumentation

  • Rename opentelemetry-auto-instrumentation to opentelemetry-instrumentation and console script opentelemetry-auto-instrumentation to opentelemetry-instrument

opentelemetry-proto

  • Add proto files (#728)

opentelemetry-ext-boto

  • Add boto instrumentation (#665)

opentelemetry-ext-botocore

  • Add botocore instrumentation (#689)

opentelemetry-exporter-cloud-monitoring

  • Add cloud monitoring exporter (#739)

opentelemetry-exporter-cloud-trace

  • Cloud Trace exporter (#698)

opentelemetry-ext-datadog

  • Set sampling rate (#740)

opentelemetry-ext-otlp

  • Add OTLP span exporter (#787)

opentelemetry-ext-pyramid

  • Instrumentation for Pyramid (#776)

opentelemetry-ext-requests

  • Better exception handling (#765)
  • Requests headers none argument fix (#708)

opentelemetry-ext-opentracing-shim

  • Add testbed for otshim (#727)

opentelemetry-ext-system-metrics

  • Adding instrumentation to collect system metrics (#652)

opentelemetry v0.8.0

27 May 22:18
Compare
Choose a tag to compare
opentelemetry v0.8.0 Pre-release
Pre-release

Beta v8 release.

docs

  • Improvements to documentation, removed duplicated example (#658)

opentelemetry-api

  • Handle boolean, integer and float values in Configuration (#662)
  • bugfix: ensure status is always string (#640)

opentelemetry-sdk

  • Validate span attribute types in SDK (#678)
  • Specify to_json indent from arguments (#718)
  • Span.resource will now default to an empty resource (#724)
  • bugfix: Fix error message (#729)
  • bugfix: deep copy empty attributes (#714)

opentelemetry-auto-instrumentation

  • Add a new bootstrap command that enables automatic instrument installations (#650)

opentelemetry-ext-asgi

  • Add ASGI middleware (#716)

opentelemetry-ext-datadog

  • Add exporter to Datadog (#572)

opentelemetry-ext-django

  • Add exclude list for paths and hosts to prevent from tracing (#670)
  • Add support for django >=1.10 (#717)

opentelemetry-ext-jaeger

  • Transform resource to tags when exporting (#645)

opentelemetry-ext-otcollector - opentelemetry-ext-opencensusexporter

  • Rename otcollector to opencensus (#695)

opentelemetry-ext-psycopg2

  • Implement instrumentor interface, enabling auto-instrumentation (#694)

opentelemetry-ext-sqlite3

  • Initial release (#683)

opentelemetry-ext-zipkin

  • Transform resource to tags when exporting (#707)

opentelemetry v0.7.1

13 May 00:18
25c9fe0
Compare
Choose a tag to compare
opentelemetry v0.7.1 Pre-release
Pre-release

Beta v7 release.

opentelemetry-api

  • Add reset for the global configuration object, for testing purposes (#636)
  • tracer.get_tracer now optionally accepts a TracerProvider (#602)
  • Configuration object can now be used by any component of opentelemetry, including 3rd party instrumentations (#563)
  • bugfix: configuration object now matches fields in a case-sensitive manner (#583)
  • bugfix: configuration object now accepts all valid python variable names (#583)
  • bugfix: configuration undefined attributes now return None instead of raising an AttributeError. (#583)

opentelemetry-sdk

  • Exporter API: span parents are now always spancontext (#548)
  • tracer.get_tracer now optionally accepts a TracerProvider (#602)
  • Console span exporter now prints prettier, more legible messages (#505)
  • bugfix: B3 propagation now retrieves parentSpanId correctly (#621)
  • bugfix: a DefaultSpan now longer causes an exception when used with tracer (#577)
  • move last_updated_timestamp into aggregators instead of bound metric instrument (#522)
  • bugfix: suppressing instrumentation in metrics to eliminate an infinite loop of telemetry (#529)
  • bugfix: freezing span attribute sequences, reducing potential user errors (#529)

opentelemetry-auto-instrumentation

  • Add support for programmatic instrumentation (#579)
  • bugfix: enable auto-instrumentation command to work for custom entry points (e.g. flask_run) (#567)

opentelemetry-ext-aiohttp-client

  • Add aiohttp client integration (#421)

opentelemetry-ext-dbapi

  • Implement instrument_connection and uninstrument_connection (#624)

opentelemetry-ext-django

  • Add django instrumentation (#593)

opentelemetry-ext-flask

  • Add exclude list for paths and hosts (#630)

opentelemetry-ext-jinja2

  • Add jinja2 instrumentation (#643)

opentelemetry-ext-mysql

  • Implement instrumentor interface (#655)

opentelemetry-ext-pymongo

  • Add support for auto-instrumentation (#612)

opentelemetry-ext-pymysql

  • Add pymysql instrumentation (#504)

opentelemetry-ext-redis

  • Add redis instrumentation (#595)

opentelemetry-ext-requests

  • Rename package to opentelemetry-ext-requests (#619)
  • Implement instrumentor interface, enabling auto-instrumentation (#597)
  • Adding disable_session for more granular instrumentation control (#573)
  • Add a callback for custom attributes (#656)

opentelemetry-ext-sqlalchemy

  • Add sqlalchemy instrumentation (#591)

opentelemetry-ext-zipkin

  • bugfix: 'debug' field is now correct (#549)

opentelemetry v0.6.0

31 Mar 05:14
ebdf3da
Compare
Choose a tag to compare
opentelemetry v0.6.0 Pre-release
Pre-release

Beta v6 release.

Documentation

Documentation continues to see large improvements, including re-organizing the examples to make them more discoverable.

READMEs and the getting started guide also have some corrections.

opentelemetry-api

  • Add support for lazy events and links (#474)
  • Metrics API no longer uses LabelSet (#527)
  • Adding is_remote flag to SpanContext, indicating when a span is remote (#516)
  • Allow digit as first char in vendor specific trace state key (#511)

opentelemetry-sdk

  • Add support for lazy events and links (#474)
  • Metrics API no longer uses LabelSet (#527)
  • Adding is_remote flag to SpanContext, indicating when a span is remote (#516)
  • Adding a solution to release metric handles and observers (#435)

opentelemetry-ext-flask

  • Add an entry_point to be usable in auto-instrumentation (#327)

opentelemetry-ext-jaeger

  • Exporting to collector now works (#508)

opentelemetry-ext-grpc

  • Add gRPC integration (#476)
  • Initial release