Skip to content

Commit 6b1fa39

Browse files
authored
Support OpenTelemetry SDK 1.33.0 (#1067)
1 parent 319815f commit 6b1fa39

File tree

5 files changed

+384
-311
lines changed

5 files changed

+384
-311
lines changed

logfire/_internal/exporters/console.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
from opentelemetry.sdk._logs.export import LogExporter, LogExportResult
1919
from opentelemetry.sdk.trace import Event, ReadableSpan
2020
from opentelemetry.sdk.trace.export import SpanExporter, SpanExportResult
21-
from opentelemetry.util import types as otel_types
2221
from rich.columns import Columns
2322
from rich.console import Console, Group
2423
from rich.syntax import Syntax
@@ -52,7 +51,7 @@
5251

5352
@dataclass
5453
class Record:
55-
attributes: Mapping[str, otel_types.AttributeValue]
54+
attributes: Mapping[str, object]
5655
timestamp: int
5756
message: str
5857
events: Sequence[Event]
@@ -476,7 +475,7 @@ def _parent_stack_text_parts(self, parent_id: int | None) -> TextParts:
476475
return parts
477476

478477

479-
def _pending_span_parent(attributes: Mapping[str, otel_types.AttributeValue]) -> int | None:
478+
def _pending_span_parent(attributes: Mapping[str, object]) -> int | None:
480479
"""Pending span marks the start of a span.
481480
482481
Since they're nested within another span we haven't seen yet,

logfire/_internal/integrations/redis.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def instrument_redis(
3636
if capture_statement:
3737
request_hook = _capture_statement_hook(request_hook)
3838

39-
RedisInstrumentor().instrument(request_hook=request_hook, response_hook=response_hook, **kwargs)
39+
RedisInstrumentor().instrument(request_hook=request_hook, response_hook=response_hook, **kwargs) # type: ignore[reportUnknownMemberType]
4040

4141

4242
def _capture_statement_hook(request_hook: RequestHook | None = None) -> RequestHook:

logfire/_internal/logs.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@
44
import functools
55
from dataclasses import dataclass
66
from threading import Lock
7-
from typing import Any
7+
from typing import TYPE_CHECKING, Any
88
from weakref import WeakSet
99

1010
from opentelemetry._logs import Logger, LoggerProvider, LogRecord, NoOpLoggerProvider
11-
from opentelemetry.util.types import Attributes
11+
12+
if TYPE_CHECKING:
13+
from opentelemetry.util.types import _ExtendedAttributes # type: ignore
1214

1315

1416
@dataclass
@@ -22,7 +24,11 @@ class ProxyLoggerProvider(LoggerProvider):
2224
suppressed_scopes: set[str] = dataclasses.field(default_factory=set) # type: ignore[reportUnknownVariableType]
2325

2426
def get_logger(
25-
self, name: str, version: str | None = None, schema_url: str | None = None, attributes: Attributes | None = None
27+
self,
28+
name: str,
29+
version: str | None = None,
30+
schema_url: str | None = None,
31+
attributes: _ExtendedAttributes | None = None,
2632
) -> Logger:
2733
with self.lock:
2834
if name in self.suppressed_scopes:
@@ -74,7 +80,7 @@ class ProxyLogger(Logger):
7480
name: str
7581
version: str | None = None
7682
schema_url: str | None = None
77-
attributes: Attributes | None = None
83+
attributes: _ExtendedAttributes | None = None
7884

7985
def emit(self, record: LogRecord) -> None:
8086
self.logger.emit(record)

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@ classifiers = [
4646
"Framework :: OpenTelemetry :: Instrumentations",
4747
]
4848
dependencies = [
49-
"opentelemetry-sdk >= 1.21.0, < 1.33.0",
50-
"opentelemetry-exporter-otlp-proto-http >= 1.21.0, < 1.33.0",
49+
"opentelemetry-sdk >= 1.21.0, < 1.34.0",
50+
"opentelemetry-exporter-otlp-proto-http >= 1.21.0, < 1.34.0",
5151
"opentelemetry-instrumentation >= 0.41b0",
5252
"rich >= 13.4.2",
5353
"protobuf >= 4.23.4",

0 commit comments

Comments
 (0)