Releases: newrelic/newrelic-telemetry-sdk-python
v0.6.0
Deprecations
Python 2
Support for Python 2 has been removed.
Urllib3 v1.26+ Required
Support for urllib3
versions <1.26.0 has been removed.
New Features
Urllib3 v2 Support
Support for urllib3
major version 2 has been added.
Contributors
Thank you to @pray and @thesuperzapper for contributing to the urllib3
changes!
v0.5.1
- Added classifiers for Python 3.12 support.
v0.5.0
New Features
Python 3.11 Support
Support for Python 3.11 has been added.
Changes
Previous references to the deprecated New Relic Insights Insert Keys have been replaced, going forward New Relic License Keys can be used in their place. References to keyword arguments that previously were named insert_key
are now named license_key
.
Deprecations
Python 3.6 support has been removed.
v0.4.3
v0.4.2
New Features
New Relic Logs
The telemetry SDK now includes the New Relic log formatter, which formats log messages that can later be forwarded with the New Relic infrastructure agent, or other log forwarders.
In addition, support has been added so that log structures can be sent directly to New Relic via the Log HTTP API.
Python 3.9 support
Support for Python 3.9 has been added.
v0.4.1
Minor Updates
Add x-request-id
header to outbound payloads (#32)
A new header named x-request-id
, which is a UUID4 value, has been added to all outbound payloads. This header may be used in the future by ingest services as described in the telemetry sdk specs repository.
v0.4.0
Backwards Incompatible Changes
Metric.from_value
is removed, replaced with metric constructorCountMetric
/SummaryMetric
interval_ms
must be specifiedHarvester.record
is removed and replaced withHarvester.batch.record
(or simplyBatch.record
)MetricBatch.record
method is removed, replaced withMetricBatch.record_gauge
,MetricBatch.record_count
,MetricBatch.record_summary
MetricBatch.create_identity
interface has been changed to accept name(str), tags (dict), and metric type (str)
New Features
Add HTTP proxy support for all clients (#30)
The telemetry SDK now supports HTTP proxies specified via environment variable and for MacOS/Windows via the operating system registry.
Bug Fixes
Harvesters now close the client on stop.
When using the harvester, the client was not closed when the harvester was stopped via the Harvester.stop
interface. Clients are now closed when the harvester is stopped.
v0.3.1
Deprecations
Metric.from_value
will be removed, replaced with metric constructor- In a future release,
CountMetric
/SummaryMetric
interval_ms
must be specified Harvester.record
is removed and replaced withHarvester.batch.record
(or simplyBatch.record
)MetricBatch.record
method is removed, replaced withMetricBatch.record_gauge
,MetricBatch.record_count
,MetricBatch.record_summary
New Features
Clients now have a Client.close
interface to force close the connection.
All clients support explicitly closing the persistent TCP connection to New Relic via the Client.close
method.
Bug Fixes
Harvester crashes when used with EventClient (#23)
When using the harvester with an event client, the harvester crashed when attempting to flush the data. This issue has now been fixed.
v0.3.0
Backwards Incompatible Changes
The compression_threshold
argument has been removed from SpanClient
, MetricClient
, and EventClient
constructors. Code that omits compression_threshold
from the client argument list will not be impacted.
Example (OK)
import os
from newrelic_telemetry_sdk import MetricClient
metric_client = MetricClient(os.environ['NEW_RELIC_INSERT_KEY'])
Example (Incompatible)
import os
from newrelic_telemetry_sdk import MetricClient
# compression_threshold has been removed, so the following code will result in an exception
metric_client = MetricClient(os.environ['NEW_RELIC_INSERT_KEY'], compression_threshold=0)
API Additions
Users can now override the HTTP port used by the telemetry SDK in all clients. (#20)
Port can now be overridden via arguments to clients.
Example
import os
from newrelic_telemetry_sdk import SpanClient
span_client = SpanClient(os.environ['NEW_RELIC_INSERT_KEY'], port=8000)
v0.2.5
Deprecations
The compression_threshold
argument to all clients is now deprecated (#18)
In a future release, all payloads will be gzip compressed. When using the compression_threshold
argument, a DeprecationWarning
will be printed. For forward compatibility, use of the compression_thresold
argument in SpanClient
, MetricClient
, and EventClient
should be discontinued.