Skip to content

Releases: open-telemetry/opentelemetry-python

Version 1.28.2/0.49b2

18 Nov 18:30
1471648
Compare
Choose a tag to compare

This is a patch release on the previous 1.28.1/0.49b1 release, fixing the issue(s) below.

  • Fix crash exporting a log record with None body (#4276)
  • sdk: setup EventLogger when OTEL_PYTHON_LOGGING_AUTO_INSTRUMENTATION_ENABLED is set (#4270)

Version 1.28.1/0.49b1

08 Nov 19:25
6f3008a
Compare
Choose a tag to compare

This is a patch release on the previous 1.28.0/0.49b0 release, fixing the issue(s) below.

  • Fix metrics export with exemplar and no context and filtering observable instruments (#4251)
  • Fix recursion error with sdk disabled and handler added to root logger (#4259)

Version 1.28.0/0.49b0

05 Nov 19:15
Compare
Choose a tag to compare
  • Removed superfluous py.typed markers and added them where they were missing (#4172)
  • Include metric info in encoding exceptions (#4154)
  • sdk: Add support for log formatting (#4137)
  • sdk: Add Host resource detector (#4182)
  • sdk: Implementation of exemplars (#4094)
  • Implement events sdk (#4176)
  • Update semantic conventions to version 1.28.0 (#4218)
  • Add support to protobuf 5+ and drop support to protobuf 3 and 4 (#4206)
  • Update environment variable descriptions to match signal (#4222)
  • Record logger name as the instrumentation scope name (#4208)
  • Fix memory leak in exporter and reader (#4224)
  • Drop OTEL_PYTHON_EXPERIMENTAL_DISABLE_PROMETHEUS_UNIT_NORMALIZATION environment variable (#4217)

Version 1.27.0/0.48b0

28 Aug 21:35
537bc1b
Compare
Choose a tag to compare
  • Implementation of Events API (#4054)
  • Make log sdk add exception.message to logRecord for exceptions whose argument is an exception not a string message (#4122)
  • Fix use of link.attributes.dropped, which may not exist (#4119)
  • Running mypy on SDK resources (#4053)
  • Added py.typed file to top-level module (#4084)
  • Drop Final annotation from Enum in semantic conventions (#4085)
  • Update log export example to not use root logger (#4090)
  • sdk: Add OS resource detector (#3992)
  • sdk: Accept non URL-encoded headers in OTEL_EXPORTER_OTLP_*HEADERS to match other languages SDKs (#4103)
  • Update semantic conventions to version 1.27.0 (#4104)
  • Add support to type bytes for OTLP AnyValue (#4128)
  • Export ExponentialHistogram and ExponentialHistogramDataPoint (#4134)
  • Implement Client Key and Certificate File Support for All OTLP Exporters (#4116)
  • Remove _start_time_unix_nano attribute from _ViewInstrumentMatch in favor of using time_ns() at the moment when the aggregation object is created (#4137)

Version 1.26.0/0.47b0

25 Jul 04:02
d84fc6c
Compare
Choose a tag to compare
  • Standardizing timeout calculation in measurement consumer collect to nanoseconds (#4074)
  • optional scope attributes for logger creation (#4035)
  • optional scope attribute for tracer creation (#4028)
  • OTLP exporter is encoding invalid span/trace IDs in the logs fix (#4006)
  • Update sdk process resource detector process.command_args attribute to also include the executable itself (#4032)
  • Fix start_time_unix_nano for delta collection for explicit bucket histogram aggregation (#4009)
  • Fix start_time_unix_nano for delta collection for sum aggregation (#4011)
  • Update opentracing and opencesus docs examples to not use JaegerExporter (#4023)
  • Do not execute Flask Tests in debug mode (#3956)
  • When encountering an error encoding metric attributes in the OTLP exporter, log the key that had an error. (#3838)
  • Fix ExponentialHistogramAggregation (#3978)
  • Log a warning when a LogRecord in sdk/log has dropped attributes due to reaching limits (#3946)
  • Fix RandomIdGenerator can generate invalid Span/Trace Ids (#3949)
  • Add Python 3.12 to tox (#3616)
  • Improve resource field structure for LogRecords (#3972)
  • Update Semantic Conventions code generation scripts: - fix namespace exclusion that resulted in dropping os and net namespaces. - add Final decorator to constants to prevent collisions - enable mypy and fix detected issues - allow to drop specific attributes in preparation for Semantic Conventions v1.26.0 (#3973)
  • Update semantic conventions to version 1.26.0. (#3964)
  • Use semconv exception attributes for record exceptions in spans (#3979)
  • Fix _encode_events assumes events.attributes.dropped exists (#3965)
  • Validate links at span creation (#3991)
  • Add attributes field in MeterProvider.get_meter and InstrumentationScope (#4015)
  • Fix inaccessible SCHEMA_URL constants in opentelemetry-semantic-conventions (#4069)

Version 1.25.0/0.46b0

31 May 01:40
257e6fe
Compare
Choose a tag to compare
  • Fix class BoundedAttributes to have RLock rather than Lock (#3859)
  • Remove thread lock by loading RuntimeContext explicitly. (#3763)
  • Update proto version to v1.2.0 (#3844)
  • Add to_json method to ExponentialHistogram (#3780)
  • Bump mypy to 1.9.0 (#3795)
  • Fix exponential histograms (#3798)
  • Fix otlp exporter to export log_record.observed_timestamp (#3785)
  • Add capture the fully qualified type name for raised exceptions in spans (#3837)
  • Prometheus exporter sort label keys to prevent duplicate metrics when user input changes order (#3698)
  • Update semantic conventions to version 1.25.0. Refactor semantic-convention structure: - SpanAttributes, ResourceAttributes, and MetricInstruments are deprecated. - Attribute and metric definitions are now grouped by the namespace. - Stable attributes and metrics are moved to opentelemetry.semconv.attributes and opentelemetry.semconv.metrics modules. - Stable and experimental attributes and metrics are defined under opentelemetry.semconv._incubating import path. (#3586)
  • Rename test objects to avoid pytest warnings ([#3823] (#3823))
  • Add span flags to OTLP spans and links (#3881)
  • Record links with invalid SpanContext if either attributes or TraceState are not empty (#3917)
  • Add OpenTelemetry trove classifiers to PyPI packages ([#3913] (#3913))
  • Fix prometheus metric name and unit conversion (#3924) - this is a breaking change to prometheus metric names so they comply with the specification. - you can temporarily opt-out of the unit normalization by setting the environment variable OTEL_PYTHON_EXPERIMENTAL_DISABLE_PROMETHEUS_UNIT_NORMALIZATION=true - common unit abbreviations are converted to Prometheus conventions (s -> seconds), following the collector's implementation - repeated _ are replaced with a single _ - unit annotations (enclosed in curly braces like {requests}) are stripped away - units with slash are converted e.g. m/s -> meters_per_second. - The exporter's API is not changed
  • Add parameters for Distros and configurators to configure autoinstrumentation in addition to existing environment variables. ([#3864] (#3864))

Version 1.24.0/0.45b0

28 Mar 19:26
01d1d4b
Compare
Choose a tag to compare
  • Make create_gauge non-abstract method (#3817)
  • Make tracer.start_as_current_span() decorator work with async functions (#3633)
  • Fix python 3.12 deprecation warning (#3751)
  • bump mypy to 0.982 (#3776)
  • Add support for OTEL_SDK_DISABLED environment variable (#3648)
  • Fix ValueError message for PeriodicExportingMetricsReader (#3769)
  • Use BaseException instead of Exception in record_exception (#3354)
  • Make span.record_exception more robust (#3778)
  • Fix license field in pyproject.toml files (#3803)

Version 1.23.0/0.44b0

23 Feb 17:02
Compare
Choose a tag to compare
  • Use Attribute rather than boundattribute in logrecord (#3567)
  • Fix flush error when no LoggerProvider configured for LoggingHandler (#3608)
  • Fix OTLPMetricExporter ignores preferred_aggregation property (#3603)
  • Logs: set observed_timestamp field (#3565)
  • Add missing Resource SchemaURL in OTLP exporters (#3652)
  • Fix loglevel warning text (#3566)
  • Prometheus Exporter string representation for target_info labels (#3659)
  • Logs: ObservedTimestamp field is missing in console exporter output (#3564)
  • Fix explicit bucket histogram aggregation (#3429)
  • Add code.lineno, code.function and code.filepath to all logs (#3645)
  • Add Synchronous Gauge instrument (#3462)
  • Drop support for 3.7 (#3668)
  • Include key in attribute sequence warning (#3639)
  • Upgrade markupsafe, Flask and related dependencies to dev and test environments (#3609)
  • Handle HTTP 2XX responses as successful in OTLP exporters (#3623)
  • Improve Resource Detector timeout messaging (#3645)
  • Add Proxy classes for logging (#3575)
  • Remove dependency on 'backoff' library (#3679)

Version 1.22.0/0.43b0

15 Dec 23:00
e6602ff
Compare
Choose a tag to compare
  • Prometheus exporter sanitize info metric (#3572)
  • Remove Jaeger exporters (#3554)
  • Log stacktrace on UNKNOWN status OTLP export error (#3536)
  • Fix OTLPExporterMixin shutdown timeout period (#3524)
  • Handle taskName logrecord attribute (#3557)

Version 1.21.0/0.42b0

07 Nov 23:16
597771e
Compare
Choose a tag to compare
  • Fix SumAggregation  (#3390)
  • Fix handling of empty metric collection cycles (#3335)
  • Fix error when no LoggerProvider configured for LoggingHandler (#3423)
  • Make opentelemetry_metrics_exporter entrypoint support pull exporters (#3428)
  • Allow instrument names to have '/' and up to 255 characters (#3442)
  • Do not load Resource on sdk import (#3447)
  • Update semantic conventions to version 1.21.0 (#3251)
  • Add missing schema_url in global api for logging and metrics (#3251)
  • Prometheus exporter support for auto instrumentation (#3413)