diff --git a/example/otlp-logs/requirements.txt b/example/otlp-logs/requirements.txt index f2f9ceb..f7418f0 100644 --- a/example/otlp-logs/requirements.txt +++ b/example/otlp-logs/requirements.txt @@ -1,2 +1,2 @@ -opentelemetry-sdk==1.17.0 -opentelemetry-exporter-otlp==1.17.0 +opentelemetry-sdk==1.24.0 +opentelemetry-exporter-otlp==1.24.0 diff --git a/example/otlp-metrics/requirements.txt b/example/otlp-metrics/requirements.txt index f2f9ceb..f7418f0 100644 --- a/example/otlp-metrics/requirements.txt +++ b/example/otlp-metrics/requirements.txt @@ -1,2 +1,2 @@ -opentelemetry-sdk==1.17.0 -opentelemetry-exporter-otlp==1.17.0 +opentelemetry-sdk==1.24.0 +opentelemetry-exporter-otlp==1.24.0 diff --git a/example/otlp-traces-http/Makefile b/example/otlp-traces-http/Makefile new file mode 100644 index 0000000..70564c0 --- /dev/null +++ b/example/otlp-traces-http/Makefile @@ -0,0 +1,2 @@ +all: + ./main.py diff --git a/example/otlp-traces-http/main.py b/example/otlp-traces-http/main.py new file mode 100755 index 0000000..2f36270 --- /dev/null +++ b/example/otlp-traces-http/main.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 + +import os + +from opentelemetry import trace +from opentelemetry.sdk.resources import Resource +from opentelemetry.sdk.trace import TracerProvider +from opentelemetry.sdk.trace.export import BatchSpanProcessor +from opentelemetry.exporter.otlp.proto.http.trace_exporter import ( + OTLPSpanExporter, +) +from opentelemetry.exporter.otlp.proto.http import Compression +from opentelemetry.sdk.extension.aws.trace import AwsXRayIdGenerator + +dsn = os.environ.get("UPTRACE_DSN") +print("using DSN:", dsn) + +resource = Resource( + attributes={"service.name": "myservice", "service.version": "1.0.0"} +) +tracer_provider = TracerProvider( + resource=resource, + id_generator=AwsXRayIdGenerator(), +) +trace.set_tracer_provider(tracer_provider) + +exporter = OTLPSpanExporter( + endpoint="https://otlp.uptrace.dev/v1/traces", + # Set the Uptrace dsn here or use UPTRACE_DSN env var. + headers=(("uptrace-dsn", dsn),), + timeout=10, + compression=Compression.Gzip, +) + +span_processor = BatchSpanProcessor( + exporter, + max_queue_size=1000, + max_export_batch_size=1000, +) +tracer_provider.add_span_processor(span_processor) + +tracer = trace.get_tracer("app_or_package_name", "1.0.0") + +with tracer.start_as_current_span("main") as span: + trace_id = span.get_span_context().trace_id + print(f"trace id: {trace_id:0{32}x}") + +# Send buffered spans. +trace.get_tracer_provider().shutdown() diff --git a/example/otlp-traces-http/requirements.txt b/example/otlp-traces-http/requirements.txt new file mode 100644 index 0000000..efb9090 --- /dev/null +++ b/example/otlp-traces-http/requirements.txt @@ -0,0 +1,3 @@ +opentelemetry-sdk==1.24.0 +opentelemetry-exporter-otlp==1.24.0 +opentelemetry-sdk-extension-aws==2.0.1 diff --git a/example/otlp-traces/requirements.txt b/example/otlp-traces/requirements.txt index 9ed31d0..efb9090 100644 --- a/example/otlp-traces/requirements.txt +++ b/example/otlp-traces/requirements.txt @@ -1,3 +1,3 @@ -opentelemetry-sdk==1.17.0 -opentelemetry-exporter-otlp==1.17.0 +opentelemetry-sdk==1.24.0 +opentelemetry-exporter-otlp==1.24.0 opentelemetry-sdk-extension-aws==2.0.1 diff --git a/setup.cfg b/setup.cfg index a95934e..90bbca8 100644 --- a/setup.cfg +++ b/setup.cfg @@ -26,10 +26,10 @@ packages=find_namespace: zip_safe = False include_package_data = True install_requires = - opentelemetry-api~=1.22 - opentelemetry-sdk~=1.22 - opentelemetry-exporter-otlp~=1.22 - opentelemetry-instrumentation~=0.43b0 + opentelemetry-api~=1.24 + opentelemetry-sdk~=1.24 + opentelemetry-exporter-otlp~=1.24 + opentelemetry-instrumentation~=0.45b0 [options.packages.find] where = src diff --git a/src/uptrace/dsn.py b/src/uptrace/dsn.py index 7021f4a..8380a66 100644 --- a/src/uptrace/dsn.py +++ b/src/uptrace/dsn.py @@ -1,6 +1,4 @@ -from urllib.parse import urlparse, parse_qs - -from .util import remove_prefix +from urllib.parse import parse_qs, urlparse class DSN: diff --git a/src/uptrace/metrics.py b/src/uptrace/metrics.py index 139c02f..66964b1 100644 --- a/src/uptrace/metrics.py +++ b/src/uptrace/metrics.py @@ -9,7 +9,9 @@ AggregationTemporality, PeriodicExportingMetricReader, ) -from opentelemetry.sdk.metrics.view import ExponentialBucketHistogramAggregation +from opentelemetry.sdk.metrics.view import ( + ExponentialBucketHistogramAggregation, +) from opentelemetry.sdk.resources import Resource from .dsn import DSN diff --git a/src/uptrace/version.py b/src/uptrace/version.py index 42a095c..933db28 100644 --- a/src/uptrace/version.py +++ b/src/uptrace/version.py @@ -1,3 +1,3 @@ """Uptrace distro version""" -__version__ = "1.22.0" +__version__ = "1.24.0"